全部博文(43)
发布时间:2012-12-25 14:41:00
问题描述:已知一个已经从小到大排序的数组,这个数组中的一个平台就是连续的一串值相同的元素,并且这一串元素不能再延伸。例如,在1,2,2,3,3,3,4,5,5,6中1,2.2,3.3.3,4,5.5,6都是平台。编写一个程序,接收一个数组,把这个数组中最长的平台找出来。在上面的例子中3.3.3就是该数组中最长的平台。 代码如下: 点击(此处)折叠或打开#include <stdio.h> #define MAX 1000 &nb......【阅读全文】
发布时间:2012-12-24 19:56:03
问题描述:已知一个已经从小到大排序的数组,这个数组中的一个平台就是连续的一串值相同的元素,并且这一串元素不能再延伸。例如,在1,2,2,3,3,3,4,5,5,6中1,2.2,3.3.3,4,5.5,6都是平台。编写一个程序,接收一个数组,把这个数组中最长的平台找出来。在上面的例子中3.3.3就是该数组中最长的平台。 我的思路:用distance变量表示平台的长度,从数组target中的第i个数开始,比较target[i]与target[i+distance],如果相等,就......【阅读全文】
发布时间:2012-12-22 22:43:37
今天是2012年12月22日。今天的算法练习题是最长公共子序列的长度求解。 此题初看时,感觉问题非常复杂,要求解两个序列的最长的(可以不连续)的公共子序列。但是,"将复杂的问题分解成简单的问题"是基本的程序设计思想。分治法是将一个大问题分解成多个相似的小问题,而本题采用的动态规划算法,则是将复杂的问题分解成一系列的相似的子问题。另外,将所求解的子问题的解通过数组等容器保存起来,来节省重复求解相同子问题的时间,是动态规划算法的一个很重要的思想:备忘录思想。&nbs......【阅读全文】
发布时间:2012-12-19 10:59:49
进程即一个程序的动态执行。引用apue上的一句话:"A thorough understanding of the UNIX System's process control is essential for advanced programming".一.总述 1.进程的开始 在C语言中,进程是由一个main函数开始。 int main(int argc,char......【阅读全文】
发布时间:2012-12-10 09:07:56
注:这里的"后知后觉"者,指的是像我一样的在大学之前没有接触过程序设计的人或者是在想要入职程序员而没有任何基础的人。一.学任何知识的先决条件 先不谈具体的学习方法,就学任何方面知识的先决条件来发表一些我自己的看法。 共三点,这3点的重要性不分先后。 第一点就是主动性。当然主动性需要建立在兴趣的基础上。主动学习与被动学习,两者的效果可以用天地之隔来形容。就好像主动去玩游戏与学习自己不喜欢的......【阅读全文】