C语言数据结构相关实验
文章平均质量分 53
分享一些数据结构的实验程序和知识总结,C语言的
2know_clay
一个人最大的幸福,莫过于在人生的中途,在最富有创造力的壮年,发现自己此生的使命。
展开
-
C语言排序算法汇总
冒泡排序、插入排序、希尔排序原创 2017-09-20 20:56:33 · 407 阅读 · 0 评论 -
多线程堆排序算法C语言实现
多线程堆排序算法C语言实现代码主要实现对八十万个长整型数据的排序;利用8个线程实现,每个线程负责十万给数,数据由rand()函数产生。原创 2017-04-13 10:42:15 · 1718 阅读 · 0 评论 -
C程序入门小程序
C语言入门小程序原创 2016-04-10 18:37:03 · 2175 阅读 · 0 评论 -
C程序设计语言3-2
将字符串1复制给字符串2,在复制过程中将换行符制表符等转换为\n,\t;原创 2016-09-25 15:56:30 · 569 阅读 · 0 评论 -
C语言中文件操作笔记
C语言中文件操作笔记原创 2016-09-16 21:35:47 · 821 阅读 · 0 评论 -
C语言指针作为形参动态申请空间
程序由一个主函数和两个子函数构成;子函数为getData()和check()。getData用来读取数据,将数据存入内存,将内存地址返回给主函数。check负责检查数据传递是否正确。原创 2016-09-29 21:50:39 · 1245 阅读 · 0 评论 -
C语言中字符数组的初始化与赋值
C语言中字符串的初始化赋值及其他操作原创 2016-09-22 14:28:58 · 99101 阅读 · 14 评论 -
C语言实现对半法查找的两种方法
主要实现了递归和循环两种实现方式;原创 2016-09-25 14:30:50 · 3063 阅读 · 0 评论 -
KMP算法与朴素模式匹配算法(C语言)
在上一篇博客中介绍了KMP算法和朴素模式匹配算法的区别,本文主要针对这两种算法的C语言实现进行讲解。原创 2016-10-29 21:57:39 · 3351 阅读 · 0 评论 -
KMP算法
这个算法研究了一天,从理论推导到C语言实现,作为初学者,还是不太容易,尤其很多资料对于next矩阵有的从0开始有的从1开始。作为初学者尤其是在具体实现是可能会搞混,但其实其本质是一样,首先需要理解算法的本质,然后再考虑形式上差异就会比较容易。 首先简单介绍朴素的模式匹配算法,然后详细介绍KMP算法。原创 2016-10-29 20:36:11 · 3557 阅读 · 4 评论 -
C语言指针作为形参的例子
编写子函动态申请内存,并将内存地址返回供主函数使用;原创 2016-09-29 21:10:03 · 2480 阅读 · 0 评论 -
栈实现表达式求值(C语言)
刚刚学习C语言的时候很多人就写过计算器,但是当时写的计算器只能进行一步四则运算;对于一次输入(1+2)*3+4这样的运算则没有办法计算。 本篇博文利用栈这种数据结构实现了支持带括号的表达式求值计算器;栈有栈底和栈顶指针,元素是先进后出;对于栈的操作最主要的是创建、压栈、弹栈;在实现计算器时,我们输入的表达式叫做中缀表达式,我们需要将其转为后缀表达式;然后利用后缀表达式求取表达式的值;原创 2016-10-28 11:32:41 · 17839 阅读 · 1 评论 -
KMP算法中next数组的求取
前两篇博客分别介绍了KMP算法的理论基础及代码实现,但是KMP算法实现的核心在于next数组的求取,第一篇论文中介绍了next数组的手动求取方法;第二篇博客中介绍了代码实现,当时没有讲清楚,而且代码实现存在一定问题。本篇博文将详细介绍next数组的求取办法及代码实现。原创 2016-11-01 10:03:19 · 6972 阅读 · 0 评论 -
C语言字符串拼接
在实验中需要生成大量的文件名,文件名是字母加编号的形式,因此需要用到字符串拼接。 文件名:string 编号:1,2,3,4…… 后缀:.bin原创 2016-10-03 13:31:38 · 14256 阅读 · 0 评论 -
C语言实现序列卷积
在上一篇博客中讲解了卷积和滤波的区别,本文主要介绍利用C如何实现序列卷积。 http://blog.csdn.net/u011028771/article/details/52733677 采用上文中的第一种方法实现原创 2016-10-04 13:58:08 · 8883 阅读 · 2 评论 -
C语言产生随机数
C语言中可以利用rand()函数产生伪随机数,也可以使用srand()配合rand()一起使用获得真随机数。原创 2016-10-06 09:45:07 · 776 阅读 · 0 评论 -
C语言中单向链表的相关操作
本文主要实现了链表的整表创建和清理; 链表数据的增删改查; 程序中链表整体创建提供了头部插入和尾部插入两种方式; 数据添加也提供了头部插入和尾部插入两种方式; 实际应用中数据一般会采用,先创建链表头指针,然后利用数据添加函数加入数据。原创 2016-10-19 21:38:29 · 906 阅读 · 0 评论 -
双向循环链表相关操作
本实验主要完成双向循环链表的 创建 添加数据 查找数据 删除数据 遍历 实验过程中遇到的问题: 1、malloc空间申请 2、malloc空间释放原创 2016-10-25 14:08:27 · 1291 阅读 · 0 评论