Java實現(xiàn)數(shù)組翻轉(zhuǎn)的實現(xiàn)代碼
1.Java提供了一些工具包實現(xiàn)了數(shù)組翻轉(zhuǎn),這里就不在贅述了 reverse。。。
2.還可以通過倒敘循環(huán),重新new一個數(shù)組進行賦值,例如
private static String[] reverseArray(String[] Array) {
String[] new_array = new String[Array.length];
for (int i = 0; i < Array.length; i++) {
// 反轉(zhuǎn)后數(shù)組的第一個元素等于源數(shù)組的最后一個元素:
new_array[i] = Array[Array.length - i - 1];
}
return new_array;
}
3.但是是效率可不可以更高一些呢,還有在同一個數(shù)組上如何進行翻轉(zhuǎn)

例如數(shù)組:a,b,c,d,e,f,g
返回結(jié)果:g,f,e,d,c,b,a
分析:數(shù)組長度為 7
對應(yīng)數(shù)組標(biāo)記,數(shù)組從0開始,也就是0,1,2,3,4,5,6
當(dāng)長度為單數(shù)時,中間位不需要互換,也就是d(4)不需要互換,也就是7/2取整結(jié)果3,3+1不需要互換,也就是length/2 +1不需要互換
當(dāng)長度為雙數(shù)時,不需要考慮,全部進行互換
總結(jié):需要互換的數(shù)據(jù)為0~(length/2 -1) 與 length/2 ~ (length -1)
設(shè)置循環(huán)系統(tǒng)i=0,閾值為lenth/2 - 1,同時倒敘獲取后面的參數(shù)進行互換。
public static void main(String[] args) {
String[] num = {"1", "2", "3", "4", "5", "6"};
for (int i = 0; i <= num.length / 2 - 1; i++) {
String temp1 = num[i];
String temp2 = num[num.length - i - 1];
num[i] = temp2;
num[num.length - i - 1] = temp1;
}
System.out.println(Arrays.asList(num).toString());
}
暫時只想到只想到這些,同時隱身知識點,java中的值傳遞與引用傳遞的區(qū)別。。。。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
idea中安裝VisualVM監(jiān)控jvm的圖文教程
這篇文章主要介紹了idea中安裝VisualVM監(jiān)控jvm的教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-09
劍指Offer之Java算法習(xí)題精講數(shù)組與字符串
跟著思路走,之后從簡單題入手,反復(fù)去看,做過之后可能會忘記,之后再做一次,記不住就反復(fù)做,反復(fù)尋求思路和規(guī)律,慢慢積累就會發(fā)現(xiàn)質(zhì)的變化2022-03-03
OpenFeign在傳遞參數(shù)為對象類型是為空的問題
這篇文章主要介紹了OpenFeign在傳遞參數(shù)為對象類型是為空的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03
Spring Cloud Gateway 獲取請求體(Request Body)的多種方法
這篇文章主要介紹了Spring Cloud Gateway 獲取請求體(Request Body)的多種方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-01-01
詳解SpringMVC的url-pattern配置及原理剖析
這篇文章主要介紹了SpringMVC的url-pattern配置及原理剖析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06

