![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
FAS_2019
这个作者很懒,什么都没留下…
展开
-
C++ 算法 查找旋转数组中的最小值 允许重复元素
假定一个有序数组中的元素以某个支点做了旋转,如数组01234567变成了34567012,查找该旋转后数组中的最小值。算法思路: 旋转后数组被分为了两部分,较大的一部分和较小的一部分并且较小的一部分在后面,如果我们取中间(非两头)的一个元素c,那么它相对于第一个a和最后一个元素b有如下关系: c < a , c < b => 最小元素在a-c之间 ...原创 2018-02-25 17:28:58 · 270 阅读 · 0 评论 -
c++ 面试 逆序输出矩阵
本题就是一个需要多动手描下,没什么技术含量,但是需要比较细心的一个题输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10. vector<int> printM...翻译 2018-07-11 22:07:12 · 968 阅读 · 0 评论 -
c++ 面试题 树相关
1.从二叉树根节点到叶节点和为定值的一个路径。输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前) /* struct TreeNode { int val; struct TreeNode ...翻译 2018-07-11 20:40:22 · 356 阅读 · 0 评论 -
C++ 典型题 面试算法 动态规划相关
题目描述(赛码网) 学校联欢晚会的时候,为了使每一个同学都能参与进来,主持人常常会带着同学们玩击鼓传花的游戏。游戏规则是这样的:n个同学坐着围成一个圆圈,指定一个同学手里拿着一束花,主持人在旁边背对着大家开始击鼓,鼓声开始之后拿着花的同学开始传花,每个同学都可以把花传给自己左右的两个同学中的一个(左右任意),当主持人停止击鼓时,传花停止,此时,正拿着花没传出去的那个同学就要给大家表演一个节目。 ...原创 2018-07-11 09:36:06 · 429 阅读 · 0 评论 -
golang 六种排序算法-快速排序、冒泡排序、交换排序、插入排序、归并排序以及堆排序
六种排序方式的注意点以及实现步骤都在代码里面,实现代码如下:package arraysortimport ( "fmt")// 数组的开闭原则:前闭后开// 查找start到end内最小的元素下标func FindMinElemIndex(arr []int, start, end int) int { mini := start for index ...原创 2018-06-28 18:37:58 · 408 阅读 · 0 评论 -
C++编程工具类实现 -- 提高笔试里面的编程速度
笔试过程中往往会使用一些常用数据结构,大多数时候标准语言提供的需要做进一步转化,这里把用到的记录到这里,方便以后使用到的时候查找。1.topN相关heap实现,top N 个最小数,Top N个最大数#include &amp;lt;iostream&amp;gt;#include &amp;lt;algorithm&amp;gt;#include &amp;lt;queue&amp;gt原创 2018-07-17 16:10:51 · 1914 阅读 · 0 评论 -
c++面试-快速排序
快速排序面试题记录待排序的一串数字为:1, 5, 8, 2, 4, 0, 4, 2, 2, 0 快速排序每次递归确定一个枢纽元素下表,枢纽元素就是位置确定下来已经排好序的元素。下面是c++的快速排序代码:// 函数参数传入的坐标区间遵循左闭右开原则int FindPivot(int *arr, int start, int end) { // 把arr[start,end)...原创 2018-06-25 17:07:42 · 445 阅读 · 0 评论 -
etcd-raft leader选举 2.3.7
etcd-raft的周期性心跳信号产生定时器在扩展的raftNode(raft.node实现raft.Node接口)节点启动,由于raftNode节点一般为扩展etcd-raft算法的结合需求的可定制类,之所以把tick的产生信号放在raftNode主要是方便修改心跳超时时间时不用修改raft协议核心代码,可以见EtcdServer的raftNode:// etcd-2.3.7/etcdser...原创 2018-06-29 13:38:27 · 1157 阅读 · 0 评论 -
子串查找kmp算法 C++实现
本文章为代替git保存代码Kmp算主要分为两步: (1)取得next数组 (2)查找子串代码如下:#include &lt;iostream&gt;#include &lt;string&gt;#include &lt;vector&gt;#include &lt;cassert&gt;/* run this program using the conso原创 2018-03-18 23:07:11 · 570 阅读 · 0 评论