摘要: 7、请找出下面代码中的所以错误说明:以下代码是把一个字符串倒序,如“abcd”倒序后变为“dcba”#include "string.h"main(){char*src="hello,world";char* dest=NULL;int len=strlen(src);dest=(char*)malloc(len);char* d=dest;char* s=src[len];while(len--!=0)d++=s--;printf("%s",dest);return 0;} 答:方法1:int main(){char* src = "hello,world";int len = strlen 阅读全文
posted @ 2010-12-23 22:28 hailong 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 9.下面代码有什么错误?Void test1() { char string[10]; char *str1="0123456789";strcpy(string, str1); } 数组越界这个今后还是要小心看着。10.用C++写个程序,如何判断一个操作系统是16位还是32位的?不能用sizeof()函数代码11.C和C++有什么不同?从机制上:c是面向过程的(但c也可以编写面向对象的程序);c++是面向对象的,提供了类。但是,c++编写面向对象的程序比c容易从适用的方向:c适合要求代码体积小的,效率高的场合,如嵌入式;c++适合更上层的,复杂的; llinux核心大部分是c写的,因为它是系 阅读全文
posted @ 2010-12-23 15:57 hailong 阅读(182) 评论(0) 推荐(0) 编辑
摘要: const 符号常量;(1)const int *a(2)int const *a(3)int * const a说明上面三种描述的区别;测试原代码:[代码](1)针对第一种情况:[代码]error C3892: “a”: 不能给常量赋值[代码]运行正确:a = 4(d的值)因此对于这种情况来说可以改变a的地址,也就是说a是个变量;但是不能*a却是个常量,不能直接改变*a的值。(2)[代码]error C3892: “a”: 不能给常量赋值代码这样都可以,说明a也是个变量,只有*a是个常量。(3)[代码]error C3892: “a”: 不能给常量赋值a是个常量,不能被赋值。[代码]ok,* 阅读全文
posted @ 2010-12-23 15:33 hailong 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 1.virtual修饰符会被隐形继承的。private 也被集成,只事派生类没有访问权限而已。virtual可加可不加。子类的空间里有父类的所有变量(static除外)。同一个函数只存在一个实体(inline除外)。子类覆盖它的函数不加virtual ,也能实现多态。在子类的空间里,有父类的私有变量。私有变量不能直接访问。2.输入一个字符串,将其逆序后输出。实现如下:代码3.请简单描述Windows内存管理的方法当程序运行时需要从内存中读出这段程序的代码。代码的位置必须在物理内存中才能被运行,由于现在的操作系统中有非常多的程序运行着,内存中不能够完全放下,所以引出了虚拟内存的概念。把哪些不常用 阅读全文
posted @ 2010-12-23 15:04 hailong 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 全排列算法有两个比较常见的实现:递归排列和字典序排列。(1)递归实现从集合中依次选出每一个元素,作为排列的第一个元素,然后对剩余的元素进行全排列,如此递归处理,从而得到所有元素的全排列。算法实现如下:#include iostream#include algorithmusing namespace std;template typename Tvoid CalcAllPermutation_R(T perm[], int first, int num){ if (num = 1) { // 得到一个排列// int count = first + num;// for (int 阅读全文
posted @ 2010-12-21 21:47 hailong 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 不怎么理解下面的代码啊?谁来解释下 阅读全文
posted @ 2010-12-21 21:40 hailong 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 1. 仔细钻研一本数据结构和算法的书.每个程序员都知道数据结构和算法的重 要性, 可是为什么呢?最主要的原因就在于经典的数据结构和算法是对常见计算机问题的归纳和总结. 如果你精通数据结构和算法,当你遇到新问题时,你就 很容易将问题进行定位,比如说这是一个图的问题还是树的问题, 然后在运用系统的知识进行分析. 从而找到解决问题的方法. 例如:如果面试官问你最少可以用多少种颜色来填充中国地图中的各个省的问题。 1) 算法复杂性分析. 你必须知道如何使用Big O来分析算法的复杂性. 如果你不知道这个,你肯定过不了面试. 如果不知道, 仔细读一下相关的那章. 你完全可以搞定的! 2) 排序算法. 阅读全文
posted @ 2010-12-21 19:00 hailong 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 描述 Description 童年的我们,对各种事物充满了好奇与向往。这天,小朋友们对数字产生了兴趣,并且想和数字交朋友。可是,怎么分配这些数字才能使得每个小朋友都唯一地找到一个数字朋友呢?C小朋友说:咱们按自己名字的字典序先后,依次选择一个剩余的最小的数字当朋友。好么?Q小朋友十分赞同。于是,大家都同意了。输入格式 Input Format 第一行为一个数n,为小朋友数和数字数。下面n行为小朋友们的名字。再下面n行为候选的n个数字。输出格式 Output Format n行,按字典序输出n个小朋友姓名及所选的数字朋友。分析:关键是完成字典排序,这个只需重载快排函数中的比较函数就ok了。然后对 阅读全文
posted @ 2010-12-12 15:55 hailong 阅读(408) 评论(0) 推荐(0) 编辑
摘要: 有N个不同的正整数数x1, x2, ... xN 排成一排,我们可以从左边或右边去掉连续的i个数(只能从两边删除数),1=i=n,剩下N-i个数,再把剩下的数按以上操作处理,直到所有的数都被删除为止。每次操作都有一个操作价值,比如现在要删除从i位置到k位置上的所有的数。操作价值为|xi – xk|*(k-i+1),如果只去掉一个数,操作价值为这个数的值。任务如何操作可以得到最大值,求操作的最大价值。表示wa了。代码 阅读全文
posted @ 2010-12-12 15:18 hailong 阅读(489) 评论(0) 推荐(0) 编辑
摘要: unsigned int 0~4294967295 int 2147483648~2147483647 unsigned long 0~4294967295 long 2147483648~2147483647long long的最大值:9223372036854775807long long的最小值:-9223372036854775808unsigned long long的最大值:1844674407370955161__int64的最大值:9223372036854775807__int64的最小值:-9223372036854775808unsigned __int64的最大值 阅读全文
posted @ 2010-12-12 14:50 hailong 阅读(195636) 评论(3) 推荐(8) 编辑
摘要: 题目描述:奶牛们灰常享受在牛栏中牟叫,因為她们可以听到她们牟声的回音。虽然有时候并不能完全听到完整的回音。Bessie曾经是一个出色的秘书,所以她精确地纪录了所有的牟叫声及其回声。她很好奇到底两个声音的重复部份有多长。输入两个字符串(长度為1到80个字母),表示两个牟叫声。你要确定最长的重复部份的长度。两个字符串的重复部份指的是同时是一个字符串的前缀和另一个字符串的后缀的字符串。我们通过一个例子来理解题目。考虑下面的两个牟声:   moyooyoxyzooo   yzoooqyasdfljkamo第一个串的最后的部份"yzooo"跟第二个串的第一部份重复。第二个串的最后的份"mo"跟第一个串的 阅读全文
posted @ 2010-12-10 16:19 hailong 阅读(1276) 评论(0) 推荐(0) 编辑
摘要: 描述 DescriptionBessie那惨无人道的二年级老师搞了一个有 N (1 = N = 100) 个正整数 I (1 = I= 10^60) 的表叫Bessie去判断“奇偶性”(这个词语意思向二年级的学生解释,就是“这个数是单数,还是双数啊?”)。Bessie被那个表的长度深深地震精到了,竟然跟栋栋的泛做表格一洋多道题!!!毕竟她才刚刚学会数数啊。写一个程序读入N个整数,如果是双数,那麼在独立的一行内输出"even",如果是单数则类似地输出"odd".输入格式 Input Format* 第一行: 一个单独的整数: N* 第2到第N+1行: 第j+1行有第j个需要判断奇偶性的整 阅读全文
posted @ 2010-12-10 15:49 hailong 阅读(561) 评论(0) 推荐(0) 编辑
摘要: 算法导论的伪代码的注释看的很晕啊,网上找到代码,研究下:代码 阅读全文
posted @ 2010-12-07 20:15 hailong 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 看来得要个父节点,因为后面的红黑树很需要啊!!代码 阅读全文
posted @ 2010-12-05 22:38 hailong 阅读(499) 评论(0) 推荐(0) 编辑
摘要: 红黑树是二叉查找树的一种。性质:1)每个节点是红的或黑的2)根节点是黑的3)叶节点都是黑的(空节点)4)若一个节点是红的,则子节点都是黑的5)每个节点到其子孙的所有路径上包含相同数目的黑色节点。算法导论提出使用哨兵元素代替空节点。因为采用了这种方法,造成生成了很多无用的空的叶子节点,为了节省空间,方法是:采用所有叶子节点和根节点的父节点(也为空)指向一个哨兵元素。高度:从某个节点到达叶节点上黑节点的数目。(这是由红黑树的性质决定的)优点:红黑树对插入时间、删除时间和查找时间提供了最好可能的最坏情况担保。关键性质: 从根到叶子的最长的可能路径不多于最短的可能路径的两倍长。 阅读全文
posted @ 2010-12-05 20:32 hailong 阅读(374) 评论(0) 推荐(0) 编辑
摘要: 看算法导论上,要设置父节点,然后求presuccessor。但是感觉这样子增加了不少麻烦,搜到一个不用父节点的方法,但是看起来也相当复杂。代码贴上: 阅读全文
posted @ 2010-12-05 19:13 hailong 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 按照算法导论的伪代码实现的,灰常简单的实现!二叉查找树的原理是节点不小于它的左孩子,小于右孩子。 阅读全文
posted @ 2010-12-03 10:07 hailong 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 不怎么明白原理,参照一个网友的代码,自己写了一下,算是练手吧: 阅读全文
posted @ 2010-12-02 22:16 hailong 阅读(2680) 评论(0) 推荐(0) 编辑
摘要: 网络模型:输入层,隐含层,输出层各层之间由权重系数联系;同层之间无联系;网络的学习训练过程是通过基于多层的前馈网络算法(正向传播和反向训练)数据到达输出层之后,把现有输出和期望输出比较,进行反向训练过程。根据误差逐层反向修改权重系数。BP实质是把一组样本的输入问题转化为非线性优化问题,采用梯度下降法,迭代运算修改权值,直到误差函数下降到允许范围。缺点:结构难以确定;对于复杂的样本数据集,网络的收敛... 阅读全文
posted @ 2010-12-02 20:26 hailong 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 按照算法导论的说法,就是利用下公式就行了。h(k)=floor(m*(kA%1));据研究发现 A 取(sqrt(5)-1)/2最好。所以代码实现就相当简单了:在这里只是学习罢了! 阅读全文
posted @ 2010-12-02 19:41 hailong 阅读(608) 评论(0) 推荐(0) 编辑
摘要: 继续: 阅读全文
posted @ 2010-11-30 22:35 hailong 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 第一次学hash,感觉有点难啊!代码奉上: 阅读全文
posted @ 2010-11-30 21:48 hailong 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 一日生存一日清,暗藏喜真抱壶眠;寒苦转甜心海静,旧衣破洁美德鲜。 阅读全文
posted @ 2010-11-30 16:01 hailong 阅读(269) 评论(0) 推荐(0) 编辑
摘要: 算法面试:精选微软经典的算法面试100题引言:给你10分钟时间,根据上排给出十个数,在其下排填出对应的十个数要求下排每个数都是先前上排那十个数在下排出现的次数。上排的十个数如下:【0,1,2,3,4,5,6,7,8,9】举一个例子,数值:0,1,2,3,4,5,6,7,8,9分配:6,2,1,0,0,0,1,0,0,00在下排出现了6次,1在下排出现了2次,2在下排出现了1次,3在下排出现了0次.... 阅读全文
posted @ 2010-11-28 20:27 hailong 阅读(5439) 评论(0) 推荐(0) 编辑
摘要: 某校的惯例是在每学期的期末考试之后发放奖学金。发放的奖学金共有五种,获取的条件各自不同:1)   院士奖学金,每人8000元,期末平均成绩高于80分(>80),并且在本学期内发表1篇或1篇以上论文的学生均可获得;2)   五四奖学金,每人4000元,期末平均成绩高于85分(>85),并且班级评议成绩高于80分(>80)的学生均可获得;3)   成绩优秀奖,每人2000元,期末平均... 阅读全文
posted @ 2010-11-27 23:18 hailong 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 为了能在下一次跑步比赛中有好的发挥,贝茜在一条山路上开始了她的训练。贝茜希望能在每次训练中跑得尽可能远,不过她也知道农场中的一条规定:奶牛独自进山的时间不得超过M秒(1 <= M <= 10,000,000)。  整条山路被贝茜划分成T个长度相同的小段(1 <= T <= 100,000),并且,贝茜用S_i表示第i个小段的路况。S_i为u,f,d这3个字母之一,它们分别表... 阅读全文
posted @ 2010-11-27 21:12 hailong 阅读(313) 评论(0) 推荐(0) 编辑
摘要: 我承认我是菜鸟,这个前序看了很久才搞明白,悲剧! 阅读全文
posted @ 2010-11-25 21:52 hailong 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 修改为非遍历版的二叉树创建和前序遍历,修改的非常纠结啊! 阅读全文
posted @ 2010-11-21 07:53 hailong 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 循环链表插入,删除和查找的初步实现,但是感觉写的漏洞非常多,再研究研究 阅读全文
posted @ 2010-11-18 22:00 hailong 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 循环链表是与单链表一样,是一种链式的存储结构,所不同的是,循环链表的最后一个结点的指针是指向该循环链表的第一个结点或者表头结点,从而构成一个环形的链。循环链表的运算与单链表的运算基本一致。所不同的有以下几点: 1、在建立一个循环链表时,必须使其最后一个结点的指针指向表头结点,而不是象单链表那样置为NULL。此种情况还使用于在最后一个结点后插入一个新的结点。   2、在判断是否到表尾时,是判断该结点... 阅读全文
posted @ 2010-11-17 21:48 hailong 阅读(138) 评论(0) 推荐(0) 编辑