首页 > 其他分享 >归并排序

归并排序

时间:2023-08-19 10:00:11浏览次数:30  
标签:index 归并 temp int arr ++ low 排序

public static void merge(int[]arr,int low,int middle,int high){
       int[]temp=new int[high-low+1];
       int i=low;                              //第一个数组需要遍历的下标
       int j=middle+1;                    //第二个数组
       int index=0;
       while(i<=middle && j<=high){
             if(arr[i]<=arr[j]){
             temp[index]=arr[i];
             i++;
             index++;
             }else{
                  temp[index]=arr[j];
                  j++;
                 index++;
            }
      }
     while(i<=middle){
           temp[index]=arr[i];
           i++;
           index++;
     }
    while(j<=high){
          temp[index]=arr[j];
          j++;
          index++;
    }
    for(int k=0;k<temp.length;k++){          //把临时数组中的元素放回
           arr[low+k]=temp[k];
    }
}

标签:index,归并,temp,int,arr,++,low,排序
From: https://www.cnblogs.com/ztzzh-1/p/17642104.html

相关文章

  • 冒泡排序
    publicstaticvoidbubbleSort(int[]arr){for(inti=0;i<arr.length-1;i++){for(intj=0;j<arr.length-1-i;j++){if(arr[j]>arr[j+1]){inttemp=arr[j];arr[j]=arr[j+1];......
  • Go 语言中排序的 3 种方法
    原文链接:Go语言中排序的3种方法在写代码过程中,排序是经常会遇到的需求,本文会介绍三种常用的方法。废话不多说,下面正文开始。使用标准库根据场景直接使用标准库中的方法,比如:sort.Intssort.Float64ssort.Strings举个例子:s:=[]int{4,2,3,1}sort.Ints(s)fmt.Prin......
  • 希尔排序
    publicstaticvoidshellSort(int[]arr){for(intd=arr.length;d>0;d/=2){//遍历所有步长for(inti=d;i<arr.length;i++){for(intj=i-d;j>=0;j-=d){if(arr[j]>arr[j+d]){int......
  • C-排序算法
    稳定性:在待排序的数据中,对于数值相同的数据,在整个排序过程中如果不会改变他们原来的先后顺序,则认为该排序算法是稳定的。内排序:所有排序操作都在内存中完成。外排序:由于数据太大,因此把数据放在磁盘中,而排序通过磁盘和内存的数据传输才能进行。比较排序:在排序的最终结果里,元素之......
  • 插入排序
    插入排序就像斗地主时理牌一样publicstaticvoidinsertSort(int[]arr){for(inti=1;i<arr.length;i++){//i是待插入元素的索引inttemp=arr[i];//待插入值intj=i-1;//已排序区域......
  • 快速排序
    publicstaticvoidquickSort(int[]arr,intstart,intend){intstandard=arr[start];intlow=start;inthigh=end;while(low<high){//找比标准数大的数、比标准数小的数while(low<high&&standard<=arr[high]){......
  • el-table 拖动排序 sortablejs
    参考:https://blog.csdn.net/glpghz/article/details/124359331官网:http://www.sortablejs.com/index.html安装cnpminstallsortablejs--save引入importSortablefrom"sortablejs";table加锚点<el-tableid="ability-table"加载后mounted()......
  • 【数据结构】选择排序 简单选择+堆排序
    选择排序的基本思想是每次从待排序的序列中选出最小值(或者最大值)依次放在已排序序列中,直到待排序序列为空,此时序列已完全有序。选择排序的选择只需要进行n-1趟,因为当剩余元素数量为1时无需再选择,直接放在排序序列的末尾即可。在这里学简单选择排序和堆排序两种算法,简单选择考的......
  • row_number()和rownum排序的区别
    在Oracle中使用ROW_NUMBER()和ROWNUM进行排序时,它们的性能可能会有一些差异。以下是它们之间的一些对比:ROW_NUMBER()排序:ROW_NUMBER()是一种窗口函数,可以为结果集中的每一行分配一个唯一的行号,并且可以根据指定的排序字段进行排序。ROW_NUMBER()函数通常在内部执行排序操作,然后为......
  • 数据结构--选择排序
    数据结构--选择排序简单选择排序在待排序的数据中选出最大的(小)的元素放在其最终位置.简单选择排序的演示简单选择排序算法简单选择排序算法分析排序方法的比较.堆排序......