對於遞歸來說,我只了解它的概念,沒有具體使用過,近期也是嘗試着用遞歸寫了一下冒泡排序和大家分享,希望能幫助大家了解遞歸
遞歸是什么?通俗的講:在方法內部調用自己
花了幾分鍾整出來的,下面是遞歸冒泡排序的代碼分享給各位
1.冒泡排序(遞歸)
1 public class SortTest { 2 public static void main(String[] args) { 3 int[] arr={12,5,16,3,9,0,158,214,85}; 4 queue(arr); 5 System.out.println(Arrays.toString(arr)); 6 } 7 public static int[] queue(int[] a) {
9 for(int j=a.length-1;j>0;j--){ 10 if(a[j]<a[j-1]){ 11 int t=a[j]; 12 a[j]=a[j-1]; 13 a[j-1]=t; 14 return queue(a); 15 } 16 }
18 return a; 19 } 20 } 21 }
2. 從1乘到n的方法(遞歸)
1 public class SortTest { 2 public static void main(String[] args) { 3 long k=Sort(20); 4 System.out.println(k); 5 } 6 public static long Sort(long n){ 7 if(n==1) 8 return 1; 9 return Sort(n-1)*n; 10 } 11 }
等我學好了之后,會把遞歸再好好整理一下的。
好了,就先這樣吧,看完了之后,你也是懂算法的人了,雖然很簡單,但一樣值得稱贊,加油各位!
別相信什么困難,什么java不好學的話,我只想告訴你的是,只要你敢想,低下頭去學,沒有什么是你學不會的。因為你正在走的路,正是別人走出來的。
人生沒有白走的路,每一步都算數!加油!!!