![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Algorithm
Pierce_Liu
以前我没得选择,现在我想做个码农
展开
-
双栈计算求值表达式
#include #include #include int main(){ std::string s = "((1+(2+3)*(4*5)))+1)"; std::stack stack_c; std::stack stack_i; int value = 0; for (size_t i = 0; i < s.size(); ++i) { if (s[i] = '原创 2017-06-05 09:12:22 · 412 阅读 · 0 评论 -
选择排序
选择排序是排序算法中比较简单的。主要思路:每次在未排序的数组序列中选择最小的对象放在数组前面。 最小的放在第一位,第二小的放在第二位.......原创 2017-06-05 21:11:21 · 215 阅读 · 0 评论 -
插入排序
void insertSort(){ std::vector V{ 5,2,9,4,1,8,3,7,6 }; for (size_t i = 1; i < V.size(); ++i) { //从后往前进行比较,比较之前,i-1前面的序列都是有序的了 //此时i依次向前进行比较,如果i小于前面的就开始一步步向前交换 //否则,就可以停止了 for (size_t j = i;原创 2017-06-05 21:43:12 · 233 阅读 · 0 评论 -
希尔排序
基于插入排序实现的希尔排序。对于大规模乱序数组插入排序显得很慢,因为它只会交换相邻的元素,因此元素只能一点一点地从数组的一端移动到另一端。例如,如果主键最小的元素正好在数组的尽头,要将它挪到正确的位置就需要进行n-1次移动。希尔排序为了加快速度简单的改动了插入排序,交换不相邻的元素以对数组的局部进行排序,并最终用插入排序将局部有序的数组排序。原创 2017-06-05 23:01:31 · 222 阅读 · 0 评论 -
归并排序
//自顶向下的归并排序void mergeSort(std::vector& V, int lo, int hi){ if (hi <= lo) return; int mid = lo + (hi - lo) / 2; mergeSort(V, lo, mid); //递归实现数组的切分 mergeSort(V, mid + 1, hi); merge(V, lo, hi)原创 2017-06-06 11:20:46 · 233 阅读 · 0 评论 -
快速排序
int quick(std::vector& V, int lo, int hi){ int i = lo; int j = hi + 1; //在比较时候,使用了--j,避免跳过hi元素,先加1 int pivot = V[lo]; //pivot是被用来比较元素 for (;;) { //i从左往右遍历数组,j从右往左遍历数组 while (V[++i] < piv原创 2017-06-06 19:16:24 · 328 阅读 · 0 评论 -
优先队列/堆
优先队列运用于在接近无限大N的输入中,找出最大(最小)的M个元素。如果用数组来实现二叉堆的话,那么位置k的结点的父结点的位置为k/2,而它的两个子结点的位置分别为2k和2k+1数组中A[0]不使用,示例代码中使用最大堆优先队列能够保证插入元素和删除最大元素这两个操作复杂度为NlogM原创 2017-06-08 00:03:34 · 288 阅读 · 0 评论 -
剑指Offer错题集(20题)
变态跳台阶一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。解题思路:比如5层台阶的跳法,从第4层跳到5层,加上之前第1层到第4层的解法从第3层跳到5层,加上之前第1层到第3层的解法…从第1层跳到5层public class Solution { public int JumpFloorII(int ta...原创 2018-12-13 20:46:27 · 172 阅读 · 0 评论 -
Manacher算法
整理自左程云算法课暴力法:以每个字符串为中心,判断其左右两边的相等的最长字符串往字符串中间添加特殊字符,可以满足字符串长度为奇数和偶数的情况eg.m: 1 2 2 1 3 3 1 2 2 1n: #1#2#2#1#3#3#1#2#2#1#maxLength: 在最中间的位置,找到最长的回文半径 21/2 = 10时间复杂度: O(n^2)Manacher算法:1. 回文半径...原创 2018-12-13 20:46:14 · 165 阅读 · 0 评论