快速找出数组中两数的和
摘要:能否快速找出一个数组中的两个数字,让这两个数字之和等于一个给定的值,为了简化起见,我们假设这个数组中肯定存在至少一组符合要求的解。 假如有如下的两个数组,如图所示: 5,6,1,4,7,9,8 给定Sum= 10 1,5,6,7,8,9 给定Sum= 10 分析与解法 这个题目不是很难,也很容易理解
阅读全文
字符串匹配之BF算法
摘要:1)算法原理 BF(Brute Force)算法是普通的模式匹配算法,BF算法的思想就是将目标串S的第一个字符与模式串P的第一个字符进行匹配,若相等,则继续比较S的第二个字符和P的第二个字符;若不相等,则比较S的第二个字符和P的第一个字符,依次比较下去,直到得出最后的匹配结果。 BF算法是一种蛮力算
阅读全文
模拟算法
摘要:算法思路:在程序设计语言中,可以使用随机函数来模拟自然界中发生的不可预测的情况 例如随意掷骰子 我们可以利用srand()或者rand()函数来进行操作 这样 r = rand()%6+1;这样就能随机1—6了
阅读全文
试探算法(回溯法)
摘要:其实N皇后问题有一种解题思路就是回溯法 试探算法的算法思路 :为了求得问题的解,先选择某一种可能情况进行试探,在试探的过程中,一旦发现原来的选择的假设情况是错误的,就退回一步重新选择 ,继续向前试探,如此反复进行,直到得到解或证明无解。 实例:生成彩票号码组合 思想:为求解,先选择某一种情况试探,试
阅读全文
贪婪算法的特点
摘要:①不能保证最后的解释最优的 ②不能用来求最大或最小解问题 ③只能求满足某些约束条件的可行解的范围 【ACM小白成长撸】 贪婪法解硬币找零问题 question:假设有一种货币,它有面值为1分、2分、5分和1角的硬币,最少需要多少个硬币来找出K分钱的零钱。按照贪婪法的思想,需要不断地使用面值最大的硬币
阅读全文
递推实例
摘要:递推分为顺推和逆推 顺推是斐波那契繁殖小兔的那类题 逆推是存钱取钱问题
阅读全文
用分治法完成比赛操作
摘要:include "stdafx.h" define maxn 64 int a[maxn + 1][maxn + 1] = { 0 }; void gamecal(int k, int n) { int i, j; if (n == 2) { a[k][1] = k; a[k][2] = k + 1
阅读全文
全排列(我开始怀疑自己的智商了....)
摘要:就一个全排列问题我看了四个小时 一个是效率不高 另一个是可能脑子混沌了 还是递归搞得不够明白 我也是很绝望啊。操... 以下源码 // ConsoleApplication7.cpp : 定义控制台应用程序的入口点。 // include "stdafx.h" const int maxn = 11
阅读全文
12种排序算法
摘要:https://blog.csdn.net/love_gaohz/article/details/46673907
阅读全文
floor函数
摘要:int强制类型转换和floor 函数都有向下取整的功能,其中floor函数是专业向下取整的。
阅读全文
为了学好算法,为了自己!
摘要:第一次的写随笔,尽量少登录QQ,每天晚上登录一次这样.....每天晚上10点登录一次,然后及时写作业,你自己好好想想学算法是为了什么,复试要用,面试要用,以后上研究生了还是要用,整理一下思路赶紧前进,以后每天早上起了就跟书豪打声招呼,不管他怎么样,我们都是好朋友。相互鼓励相互扶持是必须的。 然后这次
阅读全文