大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java教程之歸并算法之有序數組合并算法實現

Java教程之歸并算法之有序數組合并算法實現

更新時間:2019-10-12 09:52:08 來源:動力節點 瀏覽2516次



  近期動力節點Java小編會給大家分享一些比較實用的Java技能,對Java開發感興趣的小伙伴們可以關注了解一下,本篇文章小編和大家分享的是歸并算法之有序數組合并算法實現,下面我們一塊來看一下吧。


  一個簡單的有序數組合并算法:寫一個函數,傳入2個有序的整數數組,返回一個有序的整數數組。實現相當簡單,創建一個長度為這兩個長度之和的數組,然后分別用三個指針指向這三個數組,找到這兩個數組中各個元素在合并數組中的位置并插入,直到某個數組指針到達尾部。再將另一個數組剩下的所有元素,直接放入歸并數組尾部。算法的簡單實現,需要注意的是對參數的校驗,判斷數組是否有序。


public class MergeOrderedArray { 
 public static int[] merge(int [] a,int []b){ 
 if(!isOrderedArray(a)){ 
 System.out.println(" array a is not an ordered array."); 
 return null; 
 } 
 
 if(!isOrderedArray(b)){ 
 System.out.println(" array b is not an ordered array."); 
 return null; 
 } 
 
 int a_len = a.length; 
 int b_len = b.length; 
 int[] merge = new int[a_len+b_len]; 
 int i=0,j=0,k=0; 
 while(i<a_len&&j<b_len){ 
 if(a[i]<b[j]){ 
 merge[k++]=a[i++]; 
 }else{ 
 merge[k++]=b[j++]; 
 } 
 } 
 
 //A數組全部合并完畢,將b數組剩余直接加入合并數組 
 if(i==a_len){ 
 for(;j<b_len;j++){ 
 merge[k++]= b[j]; 
 } 
 }else{ 
 for(;i<a_len;i++){ 
 merge[k++]= a[i]; 
 } 
 } 
 
 return merge; 
 
 } 
 
 public static boolean isOrderedArray(int [] array){ 
 if(array==null||array.length==0){ 
 return false; 
 } 
 
 for(int i = 0;i<array.length-1;i++){ 
 if(array[i]>array[i+1]){ 
 return false; 
 } 
 } 
 return true; 
 } 
 
 public static void main(String[] args) { 
 int a [] = {1,2,3,4,5}; 
 int b [] = {2,3,4,5,6,7,8,9}; 
 int [] merge = merge(a,b); 
 System.out.println(Arrays.toString(merge)); 
 } 
}

  算法的時間復雜度,取決于待合并的兩個數組的長度,所以是O(M+N),空間復雜度也是O(M+N),即需要的歸并數組的長度是M+N。


  以上是小編簡單為大家分享的歸并算法之有序數組合并算法實現,希望對小伙伴們會有所幫助。想要了解更多Java開發方面的問題的話,小伙伴們可以登錄動力節點IT培訓官網咨詢。動力節點是專業的Java培訓機構,不僅有專業的老師和與時俱進的課程體系,還有大量的Java視頻教程供學員觀看學習,想要學好Java開發的小伙伴快快行動吧。


  相關視頻:2019年免費Java視頻教程入門到精簡

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 精品成人免费一区二区在线播放 | aaa一级黄色片 | 羞羞视频免费网站在线 | 在线播放 亚洲 | 欧美亚洲动漫 | 成人一a毛片免费视频 | 香蕉网站狼人久久五月亭亭 | 99久久99| 婷婷激情在线 | 天天干天天操天天 | 综合在线播放 | 国产成人精品免费视频 | 国产精品你懂的在线播放 | 天天视频一区二区三区 | 麻豆精品久久久一区二区 | 久久91av| 97碰公开在线观看免费视频 | 成人短视频视频在线观看网站 | www.黄色片 | 亚洲国产成人资源在线软件 | 国产精品久久综合桃花网 | 日韩欧美天堂 | 精品日产 | 成人黄色一级毛片 | 国产精品久久久久久久久鸭 | 国产a级网站 | 国产精品免费福利 | 欧美 亚洲 激情 | 韩国高清不卡一区二区 | 国产精品人成在线播放新网站 | 日韩黄色网 | 亚洲韩国日本一级二级r级 亚洲韩精品欧美一区二区三区 | 精品视频一区二区三三区四区 | 日韩精品一区二区三区中文在线 | 国产在线精品香蕉麻豆 | 在线观看国产精美视频 | 五月婷婷激情综合 | 60欧美老妇做爰视频 | 日韩免费高清一级毛片久久 | 久久网在线 | 国产激情对白一区二区三区四 |