1.排序

冒泡,快速排序

2.查找

二分查找

3.链表

翻转链表

合并链表

是否有环

b. 快慢指针

  1. public class QuickSort {
  2.  
    public static void quickSort(int[] arr,int low,int high){
  3.  
    int i,j,temp,t;
  4.  
    if(low>high){
  5.  
    return;
  6.  
    }
  7.  
    i=low;
  8.  
    j=high;
  9.  
    //temp就是基准位
  10.  
    temp = arr[low];
  11.  
     
  12.  
    while (i<j) {
  13.  
    //先看右边,依次往左递减
  14.  
    while (temp<=arr[j]&&i<j) {
  15.  
    j--;
  16.  
    }
  17.  
    //再看左边,依次往右递增
  18.  
    while (temp>=arr[i]&&i<j) {
  19.  
    i++;
  20.  
    }
  21.  
    //如果满足条件则交换
  22.  
    if (i<j) {
  23.  
    t = arr[j];
  24.  
    arr[j] = arr[i];
  25.  
    arr[i] = t;
  26.  
    }
  27.  
     
  28.  
    }
  29.  
    //最后将基准为与i和j相等位置的数字交换
  30.  
    arr[low] = arr[i];
  31.  
    arr[i] = temp;
  32.  
    //递归调用左半数组
  33.  
    quickSort(arr, low, j-1);
  34.  
    //递归调用右半数组
  35.  
    quickSort(arr, j+1, high);
  36.  
    }
  37.  

最新文章

  1. FP-tree推荐算法
  2. 2 配置Ionic开发环境以及创建新的项目
  3. FastDFS 安装
  4. 设置session失效时间
  5. linux下centos安装android sdk最新全面教程【可行】
  6. 安装Ubuntu双系统系列——安装中文输入法
  7. Android与JS混编(js调用android相机)
  8. [html5] 学习笔记-Canvas 绘制渐变图形与绘制变形图形
  9. JVM菜鸟进阶高手之路八(一些细节)
  10. VB控件间的拖放
  11. 痞子衡嵌入式:飞思卡尔Kinetis系列MCU启动那些事(2)- KBOOT形态(ROM/Bootloader/Flashloader)
  12. CCF-URL映射-(正则匹配)-20180303
  13. Lock的lockInterruptibly()方法
  14. wps word改多级编号为2.1
  15. Basic Calculator 基本计算器
  16. POJ 3388 Japanese Puzzle (二分)
  17. EZ 2017 12 17初二初三第一次膜你赛
  18. linux之 sed 基础
  19. VC++代码上传到VSS上 注意事项
  20. Generating phar.phar chmod: cannot access `ext/phar/phar.phar&#39;: No such file or directory make: [ext/phar/phar.phar] Error 1 (ignored)

热门文章

  1. 如何在TypeScript/JavaScript项目里引入MD5校验和
  2. Renix签名字段详解——网络测试仪实操
  3. 快来用这款BI分析工具,摆脱数据分析的困扰
  4. 转载 CoreCLR源码探索(七) JIT的工作原理(入门篇)
  5. 【C# IO 操作 】开篇 IO命名空间的解析
  6. MySQL 学习笔记(一)MySQL 事务的ACID特性
  7. docker-docke安装和镜像仓库安装和管理
  8. hadoop分布式集群部署①
  9. java基础复习记录
  10. LGP3311题解