码迷,mamicode.com
首页 >  
搜索关键字:算法思想    ( 911个结果
大话数据结构 - 查找算法总结
1. 顺序表查找(Sequential Search)1> 算法思想:顺序表查找应该是查找算法中最简单的了。顺序表中所有的记录都是无序的,因此在查找时,没有对查找对象范围的可能线索,唯一的方法就是沿着一个方向一直比较,直到和查找对象相等。完成查找的过程。这里一个优化点是设置一个哨兵,放在顺序表的开始...
分类:编程语言   时间:2014-11-13 00:23:22    阅读次数:397
排序算法——快速排序
排序算法——快速排序今天介绍快速排序,这也是在实际中最常用的一种排序算法,速度快,效率高。就像名字一样,快速排序是最优秀的一种排序算法。思想快速排序采用的思想是分治思想。快速排序是找出一个元素(理论上可以随便找一个)作为基准(pivot),然后对数组进行分区操作,使基准左边元素的值都不大于基准值,基...
分类:编程语言   时间:2014-11-12 14:57:58    阅读次数:253
快速排序里的学问:从猜数字开始 猜数字里的算法思想
我们先来玩一个猜数字游戏:我心里默念一个1~64之间的数,你来猜(你只能问答案是“是”或“否”的问题)。为了保证不论在什么情况下都能以尽量少的次数猜中,你应该采取什么策略呢?很显然,二分。先是猜是不是位于1~32之间,排除掉一半可能性,然后对区间继续二分。这种策略能够保证无论数字怎么跟你捉迷藏,都能...
分类:编程语言   时间:2014-11-09 11:15:47    阅读次数:290
Apriori算法的Python实现
Apriori算法是数据挖掘中频发模式挖掘的鼻祖,从60年代就开始流行,其算法思想也十分简单朴素,首先挖掘出长度为1的频繁模式,然后k=2 将这些频繁模式合并组成长度为k的频繁模式,算出它们的频繁次数,而且要保证其所有k-1长度的子集也是频繁的,值得注意的是,为了避免重复,合并的时候,只合并那些前k-2个字符都相同,而k-1的字符一边是少于另一边的。 以下是算法的Python实现: __au...
分类:编程语言   时间:2014-11-08 15:20:43    阅读次数:191
第十五章 动态规划——钢条切割
前言:动态规划的概念 动态规划(dynamic programming)是通过组合子问题的解而解决整个问题的。分治算法是指将问题划分为一些独立的子问题,递归的求解各个问题,然后合并子问题的解而得到原问题的解。例如归并排序,快速排序都是采用分治算法思想。本书在第二章介绍归并排序时,详细介绍了分治算法....
分类:其他好文   时间:2014-11-06 10:48:17    阅读次数:204
排序算法之从冒泡排序所想到的
1、算法思想描写叙述:1)将相邻的两个数进行比較,假设前面的一个大于后面的一个,则将他们交换。每次循环能使一个数达到有序状态。2、时间复杂度: 平均O(n^2)。最佳:O(n),在序列一開始就是正序的时候取得3、实现及优化。下面给出三种实现方式/* * bubblesort.cpp * * Cr.....
分类:编程语言   时间:2014-11-04 10:48:13    阅读次数:256
Tarjan算法详解理解集合
【功能】Tarjan算法的用途之一是,求一个有向图G=(V,E)里极大强连通分量。强连通分量是指有向图G里顶点间能互相到达的子图。而如果一个强连通分量已经没有被其它强通分量完全包含的话,那么这个强连通分量就是极大强连通分量。【算法思想】用dfs遍历G中的每个顶点,通dfn[i]表示dfs时达到顶点i...
分类:编程语言   时间:2014-10-29 09:07:38    阅读次数:203
选择排序与python实现
1.算法思想n 个元素,假设前 i 个元素已经排好序,从i+1到n个元素中选出最小的元素放在它在有序表中的最终位置上2.代码实现(1)非递归调用def SelectionSort(A, n): for i in range(0, n-2): mini = i for...
分类:编程语言   时间:2014-10-28 23:59:42    阅读次数:369
飘逸的python - 带权随机算法及在抽奖中的应用
带权随机在游戏开发中重度使用,各种抽奖和爆装备等. 运营根据需要来配置各个物品出现的概率. 今天要说的这个带权随机算法思想很简单,就是"把所有物品根据其权重构成一个个区间,权重大的区间大.可以想象成一个饼图.  然后,扔骰子,看落在哪个区间," 举个栗子,有个年终抽奖,物品是iphone/ipad/itouch. 主办方配置的权重是[('iphone', 10), ('ipad', 40)...
分类:编程语言   时间:2014-10-28 20:09:30    阅读次数:258
分治算法
1、折半搜索算法 (1)算法代码: (2)复杂性分析  任何一种以比较为基础的搜索算法, 在最坏情况下所用的时间都不可能低于 (log ) n ? ,因此,也就不可能存在最坏情况下所需时间比折半搜索数量级还低的算法。   2、排序问题 2.1归并排序算法 (1)归并排序算法思想 该算法采用分治方法, 将要排序的数组分成两部分, 先对每部分进行排序,然后将两部分的...
分类:编程语言   时间:2014-10-25 21:35:00    阅读次数:246
911条   上一页 1 ... 80 81 82 83 84 ... 92 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!