自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 快速排序(单趟排序算法,递归和非递归实现)

假设一维数组a, 假设一维数组a, 对其区间 [begin,end] 排升序,选择 a[begin] 为 key,begin位置形成坑,end 找比 key 小的值,begin找比 key 大的值。假设一维数组a, 对其区间 [begin,end] 排升序,选择 a[begin] 为 key,end 找比 key 小的值,begin找比 key 大的值,然后 a[begin] 和 a[end] 交换;对左右区间进行快速排序(即递归调用),终止条件:区间长度为1,或区间不存在,即 left>=right。

2024-06-08 17:40:47 250

原创 结构体的概念

4.嵌套结构体的情况,嵌套的结构体对齐到自己的最大对齐数的整数倍处,结构体的大小就是所以最大对齐数的整数倍。原因在于,为了访问未对齐的内存处理器需要作两次内存访问,而对齐的内存访问仅需一次访问,用空间换时间。结构的每个成员可以是不同类型的变量。注:结构体总大小达不到最大对齐数的整数倍,会开辟内存直至到达最大对齐数整数倍。3.结构体总大小为最大对齐数(所有成员变量的对齐数最大值)的整数倍。对齐数=min{默认对齐数,成员的大小}(单位:byte)此为,在创建结构体时同时创建一个变量p1,并初始化。

2024-04-08 23:33:33 262 1

原创 八皇后问题(*)

在国际象棋中,皇后是最厉害的棋子,可以横走、直走,还可以斜走。棋手马克斯·贝瑟尔 1848 年提出著名的八皇后问题:即在 8 × 8 的棋盘上摆放八个皇后,使其不能互相攻击 —— 即任意两个皇后都不能处于同一行、同一列或同一条斜线上。例如:现在我们把棋盘扩展到 n×n 的棋盘上摆放 n 个皇后,请问该怎么摆?请编写程序,输入正整数 n,输出全部摆法(棋盘格子空白处显示句点“.”,皇后处显示字母“Q”,每两个字符之间空一格)。

2023-12-27 23:16:00 501 1

原创 leetcode_环形链表

Q:为什么是 n*C 而不是 C?A:因为 C 和 L 的长度未知。如果 L 比 C 大很多的话,可能 slow 在走到路口点时,fast在环内就转了很多圈了。Q: 为什么slow连一圈都没走完就被追上了?A: 因为 fast 的速度是 slow 的两倍,匀速且经过相同时间下,fast 路程是 slow 的两倍。极端情况如图所示:假设slow进环时,slow 无限逼近于 fast,极限为 fast 和 slow 相对距离为C,相对速度为1,可算出时间为 C,即 slow 极限走1圈,fast走2圈。

2023-12-07 20:41:50 855

原创 PTA 习题8-4 报数(约瑟夫环问题——数组实现)

其中n是初始人数;m是游戏规定的退出位次(保证为小于n的正整数)。函数CountOff将每个人的退出顺序编号存在数组out[]中。因为C语言数组下标是从0开始的,所以第i个位置上的人是第out[i-1]个退出的。

2023-11-22 16:35:23 680 1

原创 PTA 习题7-5 找鞍点(最全解---考虑多个鞍点,每一行最大值元素有多个)

习题7-5 找鞍点一个矩阵元素的“鞍点”是指该位置上的元素值在该行上最大、在该列上最小。本题要求编写程序,求一个给定的n阶方阵的鞍点。

2023-11-19 16:48:39 937

原创 模拟实现通讯录

解决思路:排序是根据peo中name来进行排序的,但实际排序的是整个结构体peo,因此要传类型为peo的地址,对每个结构体排序,操作的大小是一个结构体的大小。3.定义人信息的结构体类型peo(typedef改名),定义含有peo类型的数组a,以及记录存放的人数count,将此结构体命名为contact。1.将通讯录的所有功能分别封装为函数,并将实现函数代码封装到:contact.c中,将函数的声明放到:contact.h中。模拟实现一个通讯录,功能有:增加,删除,查找,修改,排序,打印。

2023-11-18 18:00:21 140 3

原创 动态规划问题---最长公共子串

实验2-1 最长公共子串一个序列中去掉若干(也可以不去掉)元素剩下的部分称为其子序列。对于给定的序列X = ,称序列Z = 为X的一个子序列,仅当在X中存在一个递增序号序列,对所有的j(1,2,…,k)满足 xij​​= zj​。例如,Z = 是X = 的一个子序列,X中相应的序号序列为 。

2023-11-18 17:37:44 360 1

原创 练习7-4 找出不是两个数组共有的元素

给定两个整型数组,本题要求找出不是两者共有的元素。

2023-11-08 01:06:13 140 1

原创 c语言打印菱形

count1变量用来界定中间的那一行,每次整体循环把count1赋为0,当count1出了内嵌的第一个for循环时为0,则说明已经打印到了顶格的那行,此时,进入条件,flag赋为0,保证count1之后始终为0,可以一直进入条件。此时,i-=2(作用:逻辑上使得i为i--), i变为3,i++变为4,打印第四行,以此类推,直到count2到i等于1时++,赋为1,通过条件return 0.思路:因为每行的‘*’数和空格数都与该行的行数有关,则可得出打印空格和‘*’的两层循环可以重复使用。

2023-11-02 01:24:06 47

原创 习题8-6 删除字符

其中char *str是传入的字符串,c是待删除的字符。函数delchar的功能是将字符串str中出现的所有c字符删除。

2023-10-31 23:33:41 490 1

原创 习题8-5 使用函数实现字符串部分复制

函数strmcpy将输入字符串char *t中从第m个字符开始的全部字符复制到字符串char *s中。若m超过输入字符串的长度,则结果字符串应为空串。

2023-10-31 22:02:28 438 1

原创 习题5-7 使用函数求余弦函数的近似值

其中用户传入的参数为误差上限e和自变量x;函数funcos应返回用给定公式计算出来、并且满足误差要求的cos(x)的近似值。输入输出均在双精度范围内。

2023-10-31 00:36:39 194 1

原创 扫雷游戏(初阶版)

特别注意:为了统计炸弹个数时更方便,将有用行扩充2行,有用列扩充2列,以便统计炸弹个数时可以直接遍历周围的8个元素,没有越界访问的情况发生。实现思路:创建两个相同类型的二维字符数组,一个用来存放雷的信息,另一个作为展示的界面。4.剩余的被字符覆盖的位置如果恰好全是炸弹,则视为游戏成功,展示雷的排布,退出游戏。定义两个常量ROWS和COLS,创建两个二维数组,初始化这两个数组为相应的内容。2.输入坐标恰好是雷的位置,游戏结束,把雷的排布展示出来。要求:游戏界面范围,方便得知坐标的提示。3.定义展示界面函数。

2023-10-25 02:04:08 31 1

原创 三子棋游戏(初阶版)

rand()函数返回一个范围为0到rand_MAX(包括0和rand_MAX)的伪随机整数(即数学范围[0,rand_MAX])。简而言之,即使用rand()函数需要设定一个种子值(seed),如果没有设定种子值,则rand()默认用1来设定。相同的种子值,rand()函数返回的随机整数序列是固定的,需要srand()的参数设定不同的种子值来确保得到不同的随机整数序列。rand()声明为,int rand(void),srand()声明为,void srand(unsigned int seed)。

2023-10-25 01:03:40 37 1

原创 习题5-4 使用函数求素数和

其中函数prime当用户传入参数p为素数时返回1,否则返回0;函数PrimeSum返回区间[mn]内所有素数的和。题目保证用户传入的参数m≤n。

2023-10-19 21:32:08 91 1

原创 练习7-10 查找指定字符

从给定字符串中,查找指定字符。

2023-10-19 01:26:23 194

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除