算法
文章平均质量分 61
maple_ye_1994
这个作者很懒,什么都没留下…
展开
-
【算法】递归求数组指定范围内最大和次大的数值
问题描述从数组区间A[low, high]中找出最大的两个整数A[x1]和A[x2]算法思路这里我们使用递归分治的策略,把问题划分为求A[low, middle],B[middle + 1, high]的子问题。递归基为if(low == high) { x1 = low; x2 = -9999; // 这里表示一个极小的数 }具体代码#include <stdio.h> #incl原创 2017-02-12 23:23:43 · 1590 阅读 · 0 评论 -
【二分法】LeetCode-Search Insert Position
前言今天在LeetCode遇到一个这样的题目.题目意思就是给一个排好序的数组和要寻找的数,若数组存在,返回它的index,否则返回它该插入的位置。思考拿到这个问题,哇,这不就是普通的二分法吗?那就刷刷的写下了二分法的代码:func searchInsert(_ nums: [Int], _ target: Int) -> Int { var low = 0 var high = nu原创 2017-10-27 10:34:08 · 372 阅读 · 0 评论 -
【算法】归并排序及其应用
#一、归并排序##归并排序的思路归并排序是典型的分治算法,把一个数组的排序,分为两个子序列的排序,然后将两个有序序列合并。以上就是整个算法的核心。整个过程如下图所示(图侵删):![归并排序图解](https://upload-images.jianshu.io/upload_images/7789910-7644baaa23733f15.png?imageMogr2/auto-orient/str...原创 2018-06-12 16:43:02 · 342 阅读 · 0 评论