当前位置: 首页 > article >正文

【数据结构和算法实践-排序-快速排序】

数据结构和算法实践-排序-归并排序

    • 题目
    • My Thought
    • 代码示例
      • JAVA-8

题目

排序

My Thought

然后再进行递归,递归要注意两个方面:
一、自我调用
二、终止条件:即函数边界
注意点:树、递归*

代码示例

JAVA-8

  public class QuickSort {


    public void sort(int[] arr, int left, int right) {

        int pivot = partition(arr, left, right);

        sort(arr, left, pivot - 1);
        sort(arr, pivot + 1, right);

    }

    private int partition(int[] arr, int left, int right) {
        int index = 0;
        int pivot = arr.length - 1;
        int less = -1;
        while (index < arr.length) {
            if (arr[index] < arr[pivot]) {
                swap(arr, ++less, index);
            } else {
                index++;
            }
        }
        return less;
    }


    /**
     * 用左右两个指针,进行交换
     *
     * @param arr
     * @param left
     * @param right
     */
    private void swap(int[] arr, int left, int right) {
        int tmp = arr[left];
        arr[left] = arr[right];
        arr[right] = tmp;
    }
}


http://www.kler.cn/a/323364.html

相关文章:

  • 【Pikachu】XML外部实体注入实战
  • C++ 中的string类
  • Linux运维常用命令
  • SobarQube实现PDF报告导出
  • 基于Matlab的碎纸片的自动拼接复原技术
  • 借助Excel实现Word表格快速排序
  • 使用canvas截取web camera指定区域,并生成图片
  • 数据结构之——栈
  • 【Kubernetes】常见面试题汇总(四十)
  • EasyExcel 多个不同对象集合,导入同一个sheet中
  • gMLP:Pay Attention to MLPs--模型代码讲解
  • 数字通云平台智慧政务 login 存在登录绕过
  • Java | Leetcode Java题解之第435题无重叠区间
  • E9OA解决文档附件没有关联文档正文问题
  • 54K55LyB5p2l5a6i5pyN57O757uf token硬编码漏洞
  • Spring源码学习:SpringMVC(2)DispatcherServlet初始化【子容器9大组件】
  • 对于 Vue CLI 项目如何引入Echarts以及动态获取数据
  • 机器学习-SVM
  • xxl-job 适配达梦数据库
  • StarRocks Elasticsearch Catalog原理简析
  • 【机器学习】目标分类算法概述
  • UI设计师面试整理-作品集展示
  • 基于Hive和Hadoop的招聘分析系统
  • GUI-窗口,模态窗口,拖动窗口
  • centos离线安装nvm
  • 2024新版IDEA创建JSP项目