归并排序--递归

Posted limingming1993

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了归并排序--递归相关的知识,希望对你有一定的参考价值。

直接看代码


package com.lm.digui;

public class GuiBinSort {
public static void main(String[] args) {
int[] arr = {1, 2, 3, 5, 8};
System.out.println(guibinNumber(arr, 0, arr.length - 1, 5));
}

private static int guibinNumber(int[] arr, int low, int high, int keyvalue) {
if (low < high) {
int mid = (low + high) / 2;
if (keyvalue == arr[mid]) {
return mid;
} else if (keyvalue < arr[mid]) {
return guibinNumber(arr, low, mid - 1, keyvalue);
} else if (keyvalue > arr[mid]) {
return guibinNumber(arr, mid + 1, high, keyvalue);
}

}
return -1;
}

}

以上是关于归并排序--递归的主要内容,如果未能解决你的问题,请参考以下文章

归并排序及其应用场景

归并排序

[ 数据结构 -- 手撕排序算法第六篇 ] 归并排序(下)-- 非递归方法实现

Python 归并排序(递归非递归自然合并排序)

Java 归并排序的非递归实现

动画 | 什么是归并排序?