美文网首页
常见排序算法和二分查找

常见排序算法和二分查找

作者: 偏城御 | 来源:发表于2018-03-21 22:21 被阅读0次

                   //冒泡排序

//                         int[] intArr = {20,90,13,88,1,15,40};

//                         for(int i = 0; i < intArr.Length-1; i++) {

//                                  for(int j = 0; j <  intArr.Length-i-1;j++) {

//                                           if(intArr[j]>intArr[j+1]) {

//                                                     inttemp = intArr[j];

//                                                     intArr[j] = intArr [j + 1];

//                                                     intArr[j + 1] = temp;

//                                           }

//                                  }

//                         }

                            //选择排序

//                         int[] intArr = {20,90,13,88,1,15,40};

//                         intmin;

//                         intminindex;

//                         for(int i = 0; i < intArr.Length-1; i++) {

//                                  min= intArr [i];//记录最小值

//                                  minindex= i;//记录最小值下标

//                                  //找出剩余数组中的最小值

//                                  for(int j = i+1; j < intArr.Length; j++) {

//                                           if(intArr[j]

//                                                     min= intArr [j];

//                                                     minindex= j;

//                                           }

//                                  }

//                                  intArr[minindex] = intArr [i];

//                                  intArr[i] = min;

//                         }

//                         for(int i = 0; i < intArr.Length; i++) {

//                                  Console.WriteLine(intArr[i]);

                            //插入排序

//                                                     int[] arr = {12,35,0,54,33,23,22};

//                                                     inttemp,p;

//                                                     for(int i = 1; i < arr.Length; i++) {

//                                                              temp= arr[i];

//                                                              p= i - 1;

//                                                              while(p>=0&&temp

//                                                                       arr[p + 1] = arr [p];

//                                                                       p--;

//                                                              }

//                                                              arr[p + 1] = temp;

//                                                     }

//                                                     for(int j =0; j

//                                                              Console.Write("{0},",arr[j]);

//                                                     }

                   }

         }

}

二分查找

while(low<=high){

int mid = (low+high)/2;

//mid 代表中间索引,不能放到while循环的外面

if(a[mid]) == key){

Console.WriteLine("Find Key,index = "+mid);

//如果中间的数大于要查找的数,把后面一半数组去掉

}else if ( a[mid]>key ) {

high = mid -1;

}else{   //小于要查找的数,把前面的一半的数去掉

low = mid +1;

}

}

相关文章

  • Java实现常见的算法

    主要罗列了常见的选择排序,冒泡排序和快速排序,还有二分查找的算法。 选择排序 冒泡排序 快速排序 二分查找 注意二...

  • 排序查找c++

    排序算法 选择排序 顺序查找 二分查找

  • 剑指Offer.C++.code6-10

    (1)排序和查找是面试考察算法的重点,如二分查找、归并排序、快速排序等;(2)查找:顺序查找、二分查找、哈希表查找...

  • 基本算法

    冒泡算法 选择排序 插入排序 顺序查找 二分查找

  • 其难杂症

    排序 冒泡排序,快速排序 查找算法 二分查找算法 Array方法 push/unshift,pop/shift,m...

  • 【查找算法】二分查找/插值查找/斐波那契查找(PHP)

    除了排序,查找指定值也是常见的功能,所以非常有必要掌握一下相关算法。经典查找算法有顺序查找、二分查找、差值查找、斐...

  • Chapter 2 Foundation of Algorith

    Chapter 2 插入排序 线性查找 选择算法 归并排序算法 二分查找算法 冒泡排序 插入排序 循环不...

  • 基础算法(查找 , 排序)

    算法分析 渐进符号 - (O , Ω , θ) 查找算法 二分查找 - O(logn) 排序算法 直接插入排序 -...

  • OC常用算法

    排序算法 冒泡排序 选择排序 快速排序 插入 二分查找

  • 算法之:排序

    排序算法 冒泡排序 选择排序 快速排序 插入 二分查找

网友评论

      本文标题:常见排序算法和二分查找

      本文链接:https://www.haomeiwen.com/subject/canefftx.html