数据结构与算法
SuperKai2019
这个作者很懒,什么都没留下…
展开
-
编程简单模拟之 叠筐
例题 2.5 叠筐(《计算机考研机试指南》P12)题目描述把一个个大小差一圈的筐叠上去,由里到外看像一个一个的环输入输入一个三元组,分别是:外筐的尺寸 n(大于 0 小于 80 的正奇数)、中心花色字符、外围花色字符。输出一个叠筐的图案示例输入11 B A5 @ w示例输出 AAAAAAAAAABBBBBBBBBAABAAAAAAABAABABBBBBABAABABA...原创 2020-03-11 20:37:52 · 349 阅读 · 0 评论 -
C/C++开大数组溢出问题
编译环境为 codeblocks 17.12编译的语言为C++问题描述数据结构作业,老师要求用 100 W 的随机数做排序,测试各种排序算法的时间及性能。在作业的过程中就发现,当直接开辟数组超过一定大小后会产生溢出,这里就涉及到 C++ 如何开辟大数组的问题产生原因用 C 语言直接定义数组,数组空间是开辟在 C 语言占用内存空间的栈区,而栈区开辟的内存有限导致内存溢出。解决办法用 ...原创 2018-12-03 23:49:06 · 17726 阅读 · 6 评论 -
C/C++运行时间测试函数
C/C++中有很多记时函数,一般的处理都是先调用函数记录下当前的时间start,然后 处理一段时间,再调用函数记录下结束的时间end,两者之间的差值就是程序所运行的时间,由于不同函数取值的精度不一样,适用的范围也不一样。void Test(){ int i=1000000000; while (i--);}方法一:利用time()获取系统的时间,单位为秒void Tim...原创 2018-11-27 16:33:41 · 421 阅读 · 0 评论 -
黑盒测试中结束条件的判断
while(scanf() != EOF)和 while(cin>>n)1.scanf 是 C 语言中的,它是有返回值的,其返回值是被输入函数成功赋值的变量个数,例如 scanf("%d %d",&x,&y) ;它的返回值为2 。对于while(scanf() != EOF),条件为真它可以一直执行下去,一直到文件结束scanf() 的返回值变为EOF(定义的一个常...转载 2018-11-27 21:22:08 · 328 阅读 · 0 评论 -
子函数调用出现段错误
对象为空时程序报错原创 2019-03-30 12:01:37 · 1029 阅读 · 0 评论 -
交换 m 和 n 值的三种方法
方法三:m^n表示异或翻译 2019-03-18 20:54:28 · 3416 阅读 · 0 评论 -
全排列递归算法
对于一个长为 n 的数组,它的全排列一共有 n!种可能,算法复杂度最小为O(n!),如果还需要打印出结果,那么算法复杂度为 O(n*n!)。算法设计的思路是,对于第一位给定一个值,剩下的 n-1 位进行全排列,然后通过一个循环遍历第一位所有可能的值,这里我们是通过交换来改变第一位的值,对于 n-1 位进行全排列也是一样的思想,这里我们就可以通过递归来实现这个算法,递归结束的条件是,当 n=0 ...原创 2018-12-20 20:37:13 · 216 阅读 · 0 评论