练习代码
qq_26369213
这个作者很懒,什么都没留下…
展开
-
【补充】递归实现单向链表逆转
同样是单向链表的逆转,换了个方法实现。分别用递推和递归的方式实现,但感觉在这里递归和递推效率上相差不多,要是链表太长的话,递归有可能会引发段错误或者栈溢出(进去就出不来了)。思路比昨天清晰多了,但没事去逆转一个单向链表,还真是有点蛋疼的感觉。#include #include //定义节点的数据类型typedef struct _node{ int data; //指向原创 2015-05-28 22:35:25 · 604 阅读 · 0 评论 -
【数据结构练习】基于线性结构的队列
普通的练习代码#include #include typedef struct _queue{ int *arr; int cap; //容量 int size; //该队列中存储有效数据的个数 int front; //指向队列的前端 int back; //指向队列的后端}Queue;//创建队列Queue *queue_create(int cap)原创 2015-05-26 23:11:09 · 344 阅读 · 0 评论 -
【数据结构练习】二叉树的实现
普通的二叉树代码/* 二叉树的实现*/#include #include //定义一个节点的结构体typedef struct _node{ int data; //节点需要保存的数据 struct _node *p_left; //指向左下方的节点(后继元素) struct _node *p_right; //指向右下方的节点(后继元素)}Node;原创 2015-05-26 23:06:41 · 401 阅读 · 0 评论 -
【数据结构练习】单向链表实现、链表逆序实现
单向链表逆序实现,感觉略微繁琐,还有点啰嗦。但智商是硬伤,暂时想不到更好的算法。原创 2015-05-27 22:57:33 · 647 阅读 · 0 评论 -
【课外作业】约瑟夫出圈问题
经典的约瑟夫出圈问题,具体的就不多说了,由于是用char类型的变量,所以最多只支持128个囚犯的圈圈。(能节省的地方该节省,我是绿色主义者)#include int main(){ //一共有多少人 char size = 0; //数到第几个人,由于数组的第一个元素为0,所以从-1开始 char who = -1; //间隔多少人 char how = 0; //原创 2015-05-23 21:15:20 · 806 阅读 · 0 评论 -
基于顺序存储结构的堆栈实现
练习代码,基础中的基础,就不多解释了/* 基于顺序存储结构的堆栈实现*/#include #include typedef struct _stack{ //存储空间的首地址 int *p_arr; //存储空间的大小 int size; //记录栈顶的位置 int top;}Stack;//创建一个栈Stack* create_stack原创 2015-05-25 23:19:49 · 589 阅读 · 0 评论 -
【课外作业】二维双向链表练习代码
经典的学生管理项目准备来临,为了能方便存储学生信息,利用课余时间尝试写出的一个二维链表,但由于实现函数功能的时候,并没有考虑到如何把链表存储的信息写到文件里,更别提把信息读回到链表中,而且查找功能也并不满意,很多都是想到的时候在改,本来打算改进一下函数的实现的,但是时间实在不够用,只能这样了。(本来打算后来再不会注释的,但是实在懒,还是算了)/* 练习代码: 建立一个二维双向原创 2015-05-21 22:59:44 · 1051 阅读 · 0 评论 -
【l练习代码】有序二叉树的操作
主要实现功能为:增加节点,计算二叉树节点的个数,删除二叉树指定的节点,镜像二叉树的实现(变成镜像二叉树后不再是有序二叉树,所以不能删除节点)。最近学习中发现二叉树还是挺有意思的,上网看了下二叉树的操作,发现比我想象中的要多得多,不仅仅是二叉树的增删改查,但有些的确是有难度,虽然想好好掌握以下,但暂时还是把精力放到能短时间领悟的知识上。#include #include typ原创 2015-05-30 15:29:58 · 615 阅读 · 4 评论 -
【数据结构练习】基于链表结构实现的队列
基于链表结构实现的队列,特点是先进先出,由于是链表结构实现了,所以理论上队列不会为满。原创 2015-05-27 22:21:50 · 440 阅读 · 0 评论