- 博客(5)
- 收藏
- 关注
原创 大一学习基础循环队列第一次小结
*此处不能提前先给q->rear加1,就是不能单独把q->rear加1。/*注意:%的作用是求余数,而余数不是小数部分,如4%6。printf("队空,无法出队\n");//初始化,只要初始化队头指针和队尾指针。//保存队头元素下标的队头指针。//队头指针指向的一直没有元素。//保存队尾元素下标的队尾指针。//此处为循环队列,无法全部存放数据。//队列能存放的元素的最大个数减一。
2024-11-13 10:40:40
773
原创 大一学习栈第一次小结
/此处加了typedef后,写stack前面不用加struct了。printf("栈空,无法弹出元素\n");printf("栈为空,无法弹出");//个人理解:弹出的元素才是打印的元素。3.栈的大小是有限的,栈满不能放,栈空不能取*///如果判断是否为-1,是为true。/*1.先进入栈的元素会放在栈的底部。//如果栈空,则不能弹出。//如果栈空,无法获取。//val为插入元素的值。//获取栈顶元素的值。
2024-11-12 11:13:38
473
原创 大一学习最最最基础双向链表第一次小结
printf("未找到指定位置,无法插入\n");printf("链表为空,无法打印\n");printf("链表为空,无法插入");//当x为1时从表头开始打印,当x为2时从表尾开始打印。//posdata为插入的位置,data为插入的数据。
2024-11-11 18:03:08
1311
原创 大一学习最最最基础单向链表第二次小结
i++, p2 = p2->next) //该处的p2指p2不为空。// 用于记录p1的前一个节点。// 删除p1指向的节点。// 如果p2移动了n步后正好到达链表末尾,则删除的是头节点。// 此时p1指向要删除的节点,prev指向p1的前一个节点。// 记录p1的前一个节点。//个人理解:或者是p->next=p->next->next。p=p->next;//或者 p=tmp;//从链表的第一个结点开始,如果不空,就下一个结点。// 释放被删除节点的内存。// 当p2不为空时,p1和p2同时移动。
2024-11-11 15:37:44
808
原创 大一学习最最最基础单向链表第一次小结
/寻找被删除结点的位置,该处为搜索 过程。//创建头结点(创建链表), 创建函数,返回值类型为结构体指针,参数为空。//此处仅仅是先声明删除这个操作,但并没有开始执行,是为了方便后面执行。//改变头结点,头结点不是固定的结点,谁在链表最前面,谁就是头结点。//先声明函数,个人理解该处的参数是表明这个结点是在哪个链表。
2024-11-07 20:24:37
286
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅