- 博客(25)
- 问答 (5)
- 收藏
- 关注
原创 023-8皇后问题-回溯法-《算法设计技巧与分析》M.H.A学习笔记
在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。
2016-06-30 16:33:46 1756
原创 021-回溯法与深搜的关系-《算法设计技巧与分析》M.H.A学习笔记
在包含问题的所有解的解空间树中,按照深度优先搜索的策略,从根结点出发深度探索解空间树。当探索到某一结点时,要先判断该结点是否包含问题的解,如果包含,就从该结点出发继续探索下去,如果该结点不包含问题的解,则逐层向其祖先结点回溯。(其实回溯法就是对隐式图的深度优先搜索算法)。 若用回溯法求问题的所有解时,要回溯到根,且根结点的所有可行的子树都要已被搜索遍才结束。 而若使用回溯法求任一个解时,只要搜索到问题的一个解就可以结束。
2016-06-29 16:40:43 4475
原创 020-寻找图的关节点-dfs-《算法设计技巧与分析》M.H.A学习笔记
在多于两个顶点的无向图G中,存在一个顶点v,如果有不同于v的两个顶点u和w,在u和w间的任何路径都必定经过顶点v,则称v为关节点。一种更形象的说法:关节点也叫割点,连通图中删去割点会被分割成几个连通分量。
2016-06-29 14:50:43 6096
原创 019-dfs.bfs-图的遍历-《算法设计技巧与分析》M.H.A学习笔记
深度优先搜索DFS深搜框架:bool dfs(int loc) { 标记状态loc已访问; if (loc为目标状态) return true; for (每个可能的操作) { 对loc应用操作产生新状态nstat; if (nstat合法且未被访问) { if (dfs(nstat)) return true;
2016-06-28 23:01:53 2145
原创 018-Huffman树-贪心-《算法设计技巧与分析》M.H.A学习笔记
Huffman树是完全二叉树,权重较大的节点距离根较近。Huffman编码是一种编码方法,该方法完全依据字符出现概率来构造异字头的平均长度最短的码字。
2016-06-28 22:37:50 3085
原创 017-Prim算法-贪心-《算法设计技巧与分析》M.H.A学习笔记
定义结点集合U, V (U表示已经选择加入MST的结点集合,V表示未选)1. 任选一个结点加入U2. 选择一条边权最小的边,他的两个结点分别属于U, V,并把属于V的那个结点加入U3. 重复执行2直到V空
2016-06-28 22:32:40 2661 1
原创 016-kruskal算法-贪心-《算法设计技巧与分析》M.H.A学习笔记
1. 对G的边按权重非降序排列。2. 一次取权重最小的边,如果把它放入T不会形成回路的话,则把它放入T中,否则将它丢弃。
2016-06-28 22:25:24 2103 1
原创 015-Dijkstra算法-贪心-《算法设计技巧与分析》M.H.A学习笔记
在无向图 G=(V,E) 中,假设每条边 E[i] 的长度为 w[i],找到由顶点 V0 到其余各点的最短路径。Dijkstra(迪杰斯特拉)算法是典型的单源最短路径算法,注意该算法要求图中不存在负权边。
2016-06-28 19:30:33 1935
原创 014-背包问题-动态规划-《算法设计技巧与分析》M.H.A学习笔记
01背包是在M件物品取出若干件放在空间为W的背包里,每件物品的体积为W1,W2……Wn,与之相对应的价值为P1,P2……Pn。求能获得的最大总价值。
2016-06-28 12:18:21 2785
原创 012-矩阵链相乘-动态规划-《算法设计技巧与分析》M.H.A学习笔记
给定一个矩阵序列M1M2...Mn,计算乘积M1M2...Mn。要求找出一个放置括号的方式,使得标量乘法的次数最小。
2016-06-27 17:35:31 2162
原创 011-最长公共子序列-动态规划-《算法设计技巧与分析》M.H.A学习笔记
给出两个长度分别为n和m的字符串A和B,确定A和B中最长公共子序列的长度。朴素算法:列举A中所有的子序列2n个,并逐个判断其是否在B中(Θ(m)耗费)。时间复杂度为Θ(m2n)。利用动态规划可以在Θ(nm)的时间和Θ(min{m,n})的空间内解决最长公共子序列问题。
2016-06-27 17:25:55 1635
原创 010-最近点对问题-分治法-《算法设计技巧与分析》M.H.A学习笔记
设S是平面上n个点的集合,在S中找到两点p、q,使得他们的欧几里得距离d(p,q)是所有点对中最小的。朴素的算法是计算所有点对的距离,在求出最小的,需要Ω(n2)。采用分治法可以在Θ(nlogn)完成任务。
2016-06-27 17:19:56 6249
原创 008-大整数乘法-分治法-《算法设计技巧与分析》M.H.A学习笔记
设u和v是两个n位二进制整数,传统乘法算法需要Θ(n2)的时间来计算u和v的乘积。但我们还有一个Θ(n1.59)的改进算法。
2016-06-27 16:51:44 3851 1
原创 006-寻找最大值和最小值-分治法-《算法设计技巧与分析》M.H.A学习笔记
在一个含n个元素的数组中寻找最大值和最小值。采用分治法可能仅用3n/2-2次比较在数组中找到最大值和最小值。
2016-06-27 16:32:57 3409
原创 005-二分搜索-分治法-《算法设计技巧与分析》M.H.A学习笔记
二分搜索又称折半查找,用于在排序好的序列表中进行搜索,搜索效率高,可在最坏的情况下用O(log n)完成搜索任务。
2016-06-27 16:30:57 1185
原创 003-生成排列-归纳法-《算法设计技巧与分析》M.H.A学习笔记
我们来生成1,2,3,...,n的全排列,这里只说两种与归纳法有关的算法,其他的算法还有几个,也有不是递归的算法,这里先不多讲。
2016-06-27 16:27:52 1606
原创 001-整数快速幂-归纳法-《算法设计技巧与分析》M.H.A学习笔记
计算x的n次幂的朴素算法复杂度为O(N),我们还有一种复杂度为O(log N)的快速幂方法。
2016-06-27 16:21:50 1375
原创 Android学习笔记(44):Activity
Activity为我们提供一个可进行交互的窗口。当activity类创建了一个窗口,开发人员可以通过setContentView(View)接口把UI放到activity创建的窗口上。开发应用时我们需要继承Activity或者是它的子类。
2016-06-23 13:15:23 3847
原创 git学习笔记
学习的是廖雪峰老师的git教程,http://www.liaoxuefeng.com/ 。这里整理下学习笔记供自己以后查阅,希望完整学习git的请到上面的网站找Git教程,很好的学习资料。创建版本库:git init(1) 添加文件到Git仓库:第一步:git add 添加文件到暂存区。第二步:git commit -m “提交说明” 提交到工作区。
2016-06-15 22:41:20 4612
空空如也
cocos2d-X能否开发带有好友排行榜的弱联网手游
2015-07-02
Cocos2d-X 游戏打包时,附带的文本文件或二进制文件怎么处理
2015-06-10
Cocos2d-X打包apk时出错,大神帮帮忙吧
2015-06-06
Cocos2d-X3.4 打包apk时出错,大神快来帮帮我吧
2015-06-05
Cocos2d-X 设置各种位置时要注意什么
2015-05-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人