算法
hackmind
爱游戏,爱探索,爱分析的三爱青年。
展开
-
求数组里面第二大的数
看萌芽网上一道题,正好有时间就写写。平常都用2分法找最大数,这个第2大。我用最朴实的冒泡法写出了这个算法,等有时间了用2分法写下,效率能比这个高不少。直接贴代码了。#include using namespace std;int GetSecondMaxNum(int *pArray, size_t length){ if(length == 1) { return 0; } else if(length == 2) {原创 2011-02-25 17:06:00 · 1197 阅读 · 0 评论 -
一道大学c语言作业题
刚看酷壳里的关于求素数的算法,感觉比我以前写的效率高多了。但酷壳里的判断是否是质数的函数稍微有点问题,没有判断负数,零和1的情况。我自己补充一下,同时对于他们如何想到用平方根这种方法判断感到很好奇。原创 2011-02-28 17:43:00 · 1636 阅读 · 3 评论 -
一个分号引发的血案
最近在看《Data Structuresand Algorithms》这本书,书里对数据结构和算法进行了简单的描述,并且用伪码进行了实现。伪码毕竟和代码还是有很大不同的,书的说明里说有C#写的源码,下载了一份。由于本人对C#不太熟,所以看起来比较吃力,并且这个还是开源项目,我想想何不将这个开源项目翻译成C++供大家学习研究呢,正好下午没事就简单实现了书里的单链表,学过数据结构的人都知道这是最简单的一种数据结构。写成通用的模板结构,很显然可以增加代码的复用性。我就大概的实现了一下,没想到原创 2011-05-13 18:01:00 · 2153 阅读 · 6 评论 -
求序列里连续子序列最大和
前两天再看《数据结构与算法分析C++描述》这本书的时候,第二章有个讲求序列里连续最大子序列和的问题。讲了四种算法,第四种算法时间复杂度是0(n),当然已经是最优的了。算法原理讲的挺清晰的,我大概实现了一下,随便输入了一组测试用例,仔细一看结果有点不太对,我先把书中的例子贴上来,大家看一下能发现问题不。其实问题不大,只不过令我感到奇怪的是这书都第三版了,这么明显的问题竟然没有发现,不知道是出版社翻译有问题,还是说原作者写的不对。由于没有原版书就不清楚了,看过原版的可以告诉我一声。好的,现在写原创 2011-05-16 18:41:00 · 1282 阅读 · 0 评论 -
两种不同随机算法设计理念
随机算法在程序设计里的使用频度就不用我说了。一般我们用到的随机算法都是伪随机算法,什么叫伪随机算法呢?伪随机算法意思是假如知道第一个随机种子和随机算法的话就可以推算出下一个随机数。通常我们程序里都是通过当前时间作为随机函数的第一个随机种子,然后将随机函数返回的值作为下一个种子,随机函数是一个公用函数,每个用户的请求都会触发一个新的随机种子,所以说是随机的。很多公司都有自己的一套随机算法,下面看一下原创 2011-05-03 20:13:00 · 3647 阅读 · 3 评论