摘要:
冒泡排序 冒泡排序可以说是最简单的一种排序,当然,复杂度也是最高的 冒泡排序的实现过程:两两之间相互比较,当前者比后者大的时候,两者交换(假设是升序排列)。 那么给出简单的冒泡排序算法: 这是最简单的一种排序算法,也是我们所能够写出来的,不正宗的冒泡排序。 下面给出一种正宗的冒泡排序: 显然,这种排 阅读全文
摘要:
在说明之前,先来看一个栗子: 这是一个二叉链表的实现,(#表示空树)CreateBiTree的参数是BiTree *T,也就是struct Node ** T,那么,为什么要用这个二级指针参数呢?直接BiTree T不好吗? 当然不行(-- _ --),回想一下,就跟变量一样,当你要在一个函数中修改 阅读全文
摘要:
在讲KMP模式匹配算法之前,先来讲讲朴素的模式匹配算法: 朴素的模式匹配算法: 假设现在有一个母串 S=“GoodGoogle"和一个子串T = “Google”,要在母串中找到子串的位置(首字符位置)。那么可以这样做:从S和T的首字符开始遍历,如果首字符相等,就进而比较第二个字符,第二个字符相等, 阅读全文
摘要:
方才看刘汝佳的粉书的时候,提到了补码表示法,然后我就想起来了之前一个没想通的问题,那就是 128在电脑中怎么表示? 。 以8bit机器为例,我们知道,在计算机中是没有符号的,因此产生了用数字来表示符号位的做法,即正0负1,这种方法极大的方便了我们去看和理解,但是却苦了计算机。 为什么这么说呢,我举个 阅读全文
摘要:
竞赛题目 妈耶,这么普通的竞赛题目都搞得我要死要活,脑细胞死一地,一开始看不懂也就算了,看了答案还是迷迷糊糊的,嘛,不过还是要继续,题目看不懂就多看几遍,不会写就多刷点题。坚持下去, 万一抱到大腿了呢 ~~话不多说,直接写题解吧。 QWERTYU, UVa10082 题目:把手放在键盘上时,稍不注意 阅读全文
摘要:
竞赛初入门,发现题目是真的挺难的,一道题目看下来完全不知道在说什么,或者是没头绪,看了答案之后才慢慢能理解,嘛,一步一步来吧。 开灯问题 ,有n盏灯,编号为1 n, 第一个人把所有的灯都打开,第二个人按下所有编号为2的倍数的开关(这些灯将被关掉),第三个人按下所有编号为3倍数的开关(其中关掉的灯将被 阅读全文
摘要:
关于精度丢失问题 昨天晚上做到刘汝佳粉书的一道题,源代码如下: 一开始我以为这就是简单的循环,到10就停了,然后却发现循环没有终结,陷入了死循环。 后来仔细思考了一下。发现了其中的缘由: 计算机做加减法的时候用的是二进制作计算。 十进制在转化成二进制的时候,整数部分没有误差,而小数部分却有,因为转化 阅读全文