- 博客(18)
- 收藏
- 关注
原创 生成随机数
将范围平移,使最终结果落在[number,number+RAND_MAX-1]内。取模运算:将rand()的结果限制在[0,RAND_MAX-1]的范围内。返回一个伪随机整数,范围在0到RAND_MAX之间;1.rand()函数。
2025-06-21 19:23:26
61
原创 数据结构:哈夫曼编码
例:ABAACDC:出现频率为该点的值,最小的两个值合并(不断的合并最小两个,构成树)1.哈夫曼编码:不出现歧义的情况下,编出来的码长度最短。最优二叉树的形态不唯一,但是WPL最小。左边为0,右边为1;
2025-06-06 14:43:06
134
原创 把字符 c 所对应的数字值压入栈 s 中
的 ASCII 值(也就是 48),这样就能得到该字符对应的数值。对应的十进制值是连续的,范围从 48 到 57。在 ASCII 编码里,数字字符。的 ASCII 值减去字符。运算时,实际上是用字符。
2025-06-05 13:44:41
214
原创 数据结构-二叉树的构建与遍历
(层次遍历):已知层次遍历的字符串,写出一个二叉树,并返回该二叉树的根节点。3.后面三个函数的前序遍历,中序遍历,后序遍历。已知一个二叉树,写出层次遍历的字符串。(应该牺牲的是第一个位置的内存)
2025-06-05 10:36:29
126
原创 数据结构-循环队列
那么结果如图d,队列出现“上溢出”,然而却又不是真正的溢出,所以是一种“假溢出”。就是空间还没有被占满,尾指针rear就超出内存的最大值。时, front == rear ,判断出队列为空。那么front就会溢出,而队列为空;
2025-05-23 21:45:24
197
原创 输入一串未知长度的数字,以0结尾
单链表的好处是不用定义这串数的最大长度,避免了越界问题。这个是用的单链表,也可以用数组,思想是一样的。不是完整的代码,截取了核心部分。
2025-04-22 08:34:57
155
原创 数据结构-括号匹配
这是栈的运用(但是代码只实现了对数学式子的是否是正确形式的判断,没有实现计算功能)bracketMatching() 函数中输入paraLength,需要包括空格。代码里是忽略了所有非括号字符,凭借括号的前后顺序判断式子是否是正确形式。后续会根据自己的理解,写出代码,使其满足得到一个数学式子的值的要求。1.闵帆老师的代码理解和分析。1.将一个数学式子放到栈中。2.对括号匹配知识的理解。2.核心函数(括号匹配)举例了代码中的情况1。
2025-04-21 21:11:56
414
原创 bool函数学习
bool是一种数据类型,与int,char等都类似。这两个用户的博客内容讲到很好,可以直接学习。使用头文件“stdbool.h” ->(c++)(简洁,可以先读这个,整体了解)(c)(现在的我只用了解应用头函数部分)学习代码时碰到了bool函数的运用。2.bool函数的引用。在第二个链接里面有应用。bool的作用是判断。
2025-04-21 18:21:12
167
原创 数据结构-多项式相加
用r讲tempList1的地址换成tempList2的。(3).别free掉的那个单链表,要保证p每一次移动之后,前面那个节点会被free掉(用到了中间节点s)(2).最后相加的时候,一个单链表会用来储存结果,另一个会被完全free掉。2.当其中有一个单链表为空的时候,结果就等于非空的单链表代表的多项式。(1).输入的时候默认一个单链表里面的系数越来越大。所以闵帆老师的代码抓住了这一共同点,简化了代码。3种大情况的代码都有一个共同点,就是可以最后。2.对这个应用的理解(两个多项式相加)
2025-04-20 22:00:05
191
原创 数据结构-栈
(2).出栈和进栈只针对最后一个data值,也就是paraStackPtr->data[paraStackPtr->top];(3).top指的是现在数组长度 == actualLength。(1).栈的主要特点:先进后出,后进先出。(4).增加一个元素的理解图。当top=-1时,也就是空栈。1.闵帆老师的代码理解。
2025-04-20 20:23:08
115
原创 数据结构-单链表
2.看到其他讲单链表的文章,把单链表分成了很细的几种类型,以后可以去研究一下。利用的是数组在储存位置上的连续;data[1],data[2]......1.我的同学zwh的作业有动态变化图,可以加深理解。利用*next,在逻辑上使他们有连接关系。1.闵帆老师的代码学习和分析。3.插入部分//画图理解。2.对单链表知识点的理解。
2025-04-20 12:03:51
188
原创 在不知道数值长度的情况下,输入一串数字,以换行键作为结束。(要保证这串数字在后面能够相互加减)
规定如果power[i]的值被加在了sum中,那则 power[i]-1 , power[i]-2 , power[i]+1 , power[i]+2 这四个值不能加在sum中。把数组power[]设置成int时,发现getchar()函数依然能用,而且符合我预期想法。把这些随机输入的数字按从大到小排列,power[0]一定会被加在sum中,此时ret=power[0].我在查阅关于getchar()函数的知识点时,发现他是读取字符的函数。符合:power[i]加在sum中,ret=power[i];
2025-04-19 16:21:07
397
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人