
c++简单算法
文章平均质量分 91
加油当当
争做有灵魂、有本事、有血性、有品德的新时代青年!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
归并排序
归并排序:^_^,其实还是pat乙级中的一个题:涉及到了归并排序。归并排序,正如其所说:有递归有合并。大体上分为三步:将序列分成元素个数尽可能相等的两半。将两半元素分别排序。将两个有序表合成与个表。重点是如何将两个有序表合成一个表。(参考刘汝佳紫书)void merge_sort(int a[],int x,int y,int t[]) { if(y-x>1) { //递归结束条件 i...原创 2018-02-10 17:16:23 · 2093 阅读 · 0 评论 -
深度优先搜索学习笔记
深度优先搜索简单的说:深搜就是一搜到底:广搜就是一层一层的搜索:(*^▽^*),这样说肯定是太抽象!深度优先搜索由霍普克洛夫特与罗伯特·塔扬提出,属于图论算法的一种,基本思路如下:访问顶点;从顶点出发,依次从没访问的点出发(要根据题意),对图进行深度优先遍历,直到都被访问或者不满足题意,emm好吧~举一个栗子!经典应用就是:走迷宫!题目描述:标题:方格分割6x6的方格,沿着格子的边线剪开成两部分。...原创 2018-02-21 23:02:30 · 938 阅读 · 0 评论 -
图的遍历(啊哈算法)
图的遍历使用深度优先搜索进行图的遍历:从一个未走过的顶点作为起始顶点,比如以1号顶点作为起点。沿1号顶点的边去尝试访问其他未走过的顶点,首先发现2号顶点还没有走到过,于是来到了2号顶点。再以2号顶点作为出发点继续尝试访问其他未走到过的顶点,这样有又来到了4号顶点。再以4号顶点作为出发点继续尝试访问其他为走过的顶点。但是此时沿4号顶点的边,已经不能访问到其他为走过的顶点了,所以需要返回到2号顶点,返...原创 2018-03-01 08:42:03 · 977 阅读 · 0 评论 -
二分法-续-入门基础
二分法的栗子-续通过注意一下的事情:对于二分法的停止条件:对于二分法更新L、R的值区间开闭的问题对于最后输出是L-1而不是L的问题;使用二分查找的时候需要明确查找对象!本题中查找的是宽度!也就是数组的值而不是位置; l相当于做区间左边界,r相当于区间的右边界,m是中间的分界线:一般是:(l+r)/2;使用循环缩小范围;缩小范围的过程是更新左右边界的过程;循环停止的条件:左右边界重合的时候,或者左边...原创 2018-02-20 23:25:56 · 833 阅读 · 0 评论 -
二分法c++
二分法c++什么是二分法:百度百科是这样说的:基本思想:假设数据是按升序排序的,对于给定值x,从序列的中间位置开始比较,如果当前位置值等于x,则查找成功;若x小于当前位置值,则在数列的前半段中查找;若x大于当前位置值则在数列的后半段中继续查找,直到找到为止。注意:数据必须是排好序的!详细解释:二分查找假如有一组数为3,12,24,36,55,68,75,88要查给定的值24.可设三个变量front...原创 2018-02-20 23:02:43 · 2638 阅读 · 0 评论 -
next_permutation(全排列算法)
next_permutation(全排列算法) STL提供了两个用来计算排列组合关系的算法,分别是next_permutation和prev_permutation。首先我们必须了解什么是“下一个”排列组合,什么是“前一个”排列组合。考虑三个字符所组成的序列{a,b,c}。 这个序列有六个可能的排列组合:abc,acb,bac,bca,cab,cba。这些排列组合根据less-than操...转载 2018-02-27 16:02:32 · 826 阅读 · 0 评论 -
第六届蓝桥杯A组C/C++ 第七题 手链样式
第六届蓝桥杯A组C/C++ 第七题 手链样式题目描述:小明有3颗红珊瑚,4颗白珊瑚,5颗黄玛瑙。 他想用它们串成一圈作为手链,送给女朋友。 现在小明想知道:如果考虑手链可以随意转动或翻转,一共可以有多少不同的组合样式呢?输入:无输出:请你提交该整数。不要填写任何多余的内容或说明性的文字。emmm相信大家一看就知道是使用:dfs排列组合:于是就给大家安利一下高中数学方法:hhh12!/(3!*4!*...原创 2018-02-27 15:13:38 · 1769 阅读 · 2 评论 -
STLmap
映射mapmap就是从键(key)到值(value)的映射,因为重载了[]运算符,map与数组类似。key和value类型任意;key的值不允许重复,可以利用这个特点进行去重;容器属性:联系: 关联容器中的元素被它们的键引用,而不是它们在容器中的绝对位置。顺序:严格遵照字典序进行排序;唯一的key值:容器中没有两个元素可以有相同的key;定义:map<类型1,类型2>名称//从类型1到...原创 2018-02-11 18:07:15 · 3266 阅读 · 0 评论 -
c++排序算法之插入排序
插入排序今天在写pat乙级题的时候第一次听说插入排序(我一直都是孤陋寡闻,大家谅解^_^)。插入排序通过对未排序的数据逐个插入合适的位置而完成排序的工作。思路简单,使用的也比较多~。插入排序算法通过比较和插入来实现排序,其排序流程如下:(1)first,对数组的前两个数据进行从小到大排序。(2)接着将第三个数据与排好的两个数据进行比较,将第三个数据插入到合适的位置。(3)然后将第四个数据插入到已排...原创 2018-02-10 16:37:54 · 872 阅读 · 0 评论 -
全排列与组合算法
全排列与组合算法正在准备进军电设的比赛的加油当当在分析电流的时候发现了组合的重要性,7种不同的电流手算组合几乎是不可能了,所以当当想到了编程,(*^▽^*)~~上代码:全排列算法#include<iostream> #include<algorithm> using namespace std; int main() { int ans[4]= {1,2,3,4}; s...原创 2018-05-13 15:26:14 · 1050 阅读 · 0 评论