数据结构
GOTO considered harmful considered harmful
Zard 泉水
Get busy living, or get busy dying
展开
-
归并排序(Merge Sort)
归并排序(Merge Sort) **归并排序(mergesort)的构思朴实而深刻,作为一个算法即古老又仍不失生命力。在排序算法的发展历史上,归并排序具有特殊的历史地位,它是第一个可以在最坏情况下依然保持O(nlogn)**运行时间的确定性排序算法。 无序向量的递归分解+有序向量的逐层合并(二路归并算法)。1. int 类型 mergesort // 对arr中的[lo, hi)...原创 2019-11-28 14:53:32 · 410 阅读 · 0 评论 -
插入排序(insertion sort)
插入排序(insertion sort)插入排序算法适用于包括向量与列表在内的任何序列结构 插入排序的算法可以简要描述为:始终将序列划分为两个部分: 有序的前缀,无序的后缀;通过迭代,反复的将后缀中的元素移动到前缀中。由此可以看出插入排序算法的不变性: 在任何时刻,相对于当前节点e = S[r], 前缀S[0,r]总是业已有序 算法开始时前缀为空,不变性自然满足。接下来,借...原创 2019-12-11 22:24:11 · 189 阅读 · 0 评论 -
快速幂计算 pow(x, n)
快速幂计算 pow(x, n) double myPow(double x, int n) { long long N = n; if (N < 0) // 输入处理 { x = 1 / x; N = -N; } double ans = 1; ...原创 2019-12-11 22:27:22 · 276 阅读 · 0 评论 -
LeetCode56. 合并区间
LeetCode56. 合并区间56. 合并区间//输入: [[1,6],[2,4],[8,10],[15,18]]//输出: [[1,6],[8,10],[15,18]]//解释: 区间 [1,6] 和 [2,4] 重叠, 将它们合并为 [1,6].class Solution {public: vector<vector<int>> merge(...原创 2019-12-20 01:20:47 · 192 阅读 · 0 评论