本文目錄一覽:
- 1、用java 拜託了 將一個數組逆序輸出
- 2、怎樣求數組中逆序數對的個數(java)
- 3、java如何將數組倒序列印?
- 4、用java定義一個長度為n的數組,實現該數組的逆序排列,n從鍵盤輸入
- 5、用Java編寫程序,定義一個數組,實現數組逆序排列.
用java 拜託了 將一個數組逆序輸出
這個可以使用數組工具類Arrays的asList方法將數組變成List集合,然後使用集合工具類Collections的方法reverse方法將集合中的元素順序反轉,在將集合轉換成數組,遍曆數組列印即可。
public class Test
{
public static void main(String[] args)
{
String[] s={“a”,”b”,”c”,”d”,”e”,”f”};
ListString list=Arrays.asList(s);
Collections.reverse(list);
list.toArray(s);
for(String str:s)
{
System.out.print(str+” “);
}
}
}
如果滿意,請採納謝謝。
怎樣求數組中逆序數對的個數(java)
private static int method(int[] array) {
int count = 0;
for (int i = 0; i array.length; i++) {
for (int j = i + 1; j array.length; j++) {
if (array[i] array[j]) {
count++;
}
}
}
return count;
}
private static int count = 0;
private void count(int[] array) {
int length = array.length;
int left = (int) (length / 2 + 0.5);
int right = length / 2;
int[] leftArray = new int[left];
int[] rightArray = new int[right];
System.arraycopy(array, 0, leftArray, 0, left);
System.arraycopy(array, left, rightArray, 0, right);
if (left 1 right 1) {
count(leftArray);
count(rightArray);
}
Arrays.sort(leftArray);
Arrays.sort(rightArray);
mergeCount(leftArray, rightArray);
}
private void mergeCount(int[] leftArray, int[] rightArray) {
int leftLength = leftArray.length;
int rightLength = rightArray.length;
while (leftLength 0 rightLength 0) {
if (leftArray[0] rightArray[0]) {
count = count + leftLength;
System.arraycopy(rightArray, 1, rightArray, 0, rightLength – 1);
rightLength–;
} else {
System.arraycopy(leftArray, 1, leftArray, 0, leftLength – 1);
leftLength–;
}
}
}
private static Node[] nodes;
private static int[] tree;
private static int[] reflect;
private static int length;
private static int countArray(int[] array) {
init(array);
return doCount();
}
private static int doCount() {
for (int i = 0; i length; i++) {
reflect[nodes[i].pos] = i + 1;
}
int count = 0;
for (int i = 1; i = length; i++) {
update(reflect[i]);
count = count + i – sum(reflect[i]);
}
System.out.println(count);
return count;
}
private static void init(int[] array) {
length = array.length;
nodes = new Node[length];
reflect = new int[length + 1];
tree = new int[length + 1];
for (int i = 0; i length; i++) {
nodes[i] = new Node();
nodes[i].value = array[i];
nodes[i].pos = i + 1;
}
Arrays.sort(nodes, Comparator.comparingInt(o – o.value));
}
private static int lowbit(int x) {
return x (-x);
}
private static void update(int pos) {
while (pos = length) {
tree[pos] += 1;
pos += lowbit(pos);
}
}
private static int sum(int pos) {
int sum = 0;
while (pos 0) {
sum += tree[pos];
pos -= lowbit(pos);
}
return sum;
}
public static void main(String args[]) {
int[] array = {40000000, 20000000, 3000000, 534435454, 732123434, 167675688, 46565656, 8};
System.out.println(countArray(array));
}
//—————//
class Node {
int value;
int pos;
}
java如何將數組倒序列印?
直接數組元素對換
使用ArrayList: ArrayList存入和取出的順序是一樣的,可以利用這裡特性暫時存儲數組元素.
使用Collections和Arrays工具類
零基礎學習java可按照這份大綱來進行學習
第一階段:Java專業基礎課程
———-
階段目標:
1. 熟練掌握Java的開發環境與編程核心知識
2. 熟練運用Java面向對象知識進行程序開發
3. 對Java的核心對象和組件有深入理解
4. 熟練應用JavaAPI相關知識
5. 熟練應用JAVA多線程技術
6. 能綜合運用所學知識完成一個項目
知識點:
1、基本數據類型,運算符,數組,掌握基本數據類型轉換,運算符,流程式控制制。
2、數組,排序演算法,Java常用API,類和對象,了解類與對象,熟悉常用API。
3、面向對象特性,集合框架,熟悉面向對象三大特性,熟練使用集合框架。
4、IO流,多線程。
5、網路協議,線程運用。
———
第二階段:JavaWEB核心課程
階段目標:
1. 熟練掌握資料庫和MySQL核心技術
2. 深入理解JDBC與DAO資料庫操作
3. 熟練運用JSP及Servlet技術完成網站後台開發
4. 深入理解緩存,連接池,註解,反射,泛型等知識
5. 能夠運用所學知識完成自定義框架
知識點:
1、資料庫知識,範式,MySQL配置,命令,建庫建表,數據的增刪改查,約束,視圖,存儲過程,函數,觸發器,事務,游標,建模工具。
2、深入理解資料庫管理系統通用知識及MySQL資料庫的使用與管理。為Java後台開發打下堅實基礎。Web頁面元素,布局,CSS樣式,盒模型,JavaScript,jQuery。
3、掌握前端開發技術,掌握jQuery。
4、Servlet,EL表達式,會話跟蹤技術,過濾器,FreeMarker。
5、掌握Servlet相關技術,利用Servlet,JSP相關應用技術和DAO完成B/S架構下的應用開發。
6、泛型,反射,註解。
7、掌握JAVA高級應用,利用泛型,註解,枚舉完成自己的CRUD框架開發為後續框架學習做鋪墊。
8、單點登錄,支付功能,項目整合,分頁封裝熟練運用JSP及Servlet核心知識完成項目實戰。
———
第三階段:JavaEE框架課程
階段目標:
1. 熟練運用Linux操作系統常見命令及完成環境部署和Nginx伺服器的配置
2. 熟練運用JavaEE三大核心框架:Spring,SpringMVC,MyBatis
3. 熟練運用Maven,並使用SpringBoot進行快速框架搭建
4. 深入理解框架的實現原理,Java底層技術,企業級應用等
5. 使用Shiro,Ztree和Spring,SpringMVC,Mybaits完成企業項目
知識點:
1、Linux安裝配置,文件目錄操作,VI命令,管理,用戶與許可權,環境部署,Struts2概述,hiberante概述。
2、Linux作為一個主流的伺服器操作系統,是每一個開發工程師必須掌握的重點技術,並且能夠熟練運用。
3、SSH的整合,MyBatis,SpringMVC,Maven的使用。
4、了解AOP原理,了解中央控制器原理,掌握MyBatis框架,掌握SSM框架的整合。
5、Shiro,Ztree,項目文檔,項目規範,需求分析,原型圖設計,資料庫設計,工程構建,需求評審,配置管理,BUG修復,項目管理等。
6、獨立自主完成一個中小型的企業級綜合項目的設計和整體架構的原型和建模。獨立自主完成一個大型的企業級綜合項目,並具備商業價值
用java定義一個長度為n的數組,實現該數組的逆序排列,n從鍵盤輸入
import java.util.Scanner;
public class Test{
Scanner scan = new Scanner(System.in);
System.out.print(“請輸入數組長度:”);
int n = scan.nextInt();
System.out.println(“請輸入數組內容(用空格隔開):”);
int[] arr = new int[n];
for(int i=0;in;i++){
arr[i] = scan.nextInt();
}
for(int i=0;in;i++){
for(int j=0;jn-i-1;j++){
if(arr[j]arr[j+1]){
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
System.out.println(“經逆序排列後,結果為:”);
for(int i=0;in;i++){
System.out.println(arr[i]+” “);
}
}
冒泡排序那裡沒太學紮實,可能有錯誤。
用Java編寫程序,定義一個數組,實現數組逆序排列.
完全調用api:
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class OtherWeekTime {
public static void main(String[] args){
Integer[] a = {58,69,23,158,4,50};
List list = Arrays.asList(a);
Collections.sort(list);
Collections.reverse(list);
a = (Integer[]) list.toArray();
for(int i:a){
System.out.println(i);
}
}
}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/285301.html