12、单链表的删除和u0026考研真题实战
🌺博客汇总:🌃Summary And Schedule🌠
🌸考研相关内容汇总:考研Schedule&&Summary
🌼408王道C督学课程目录:《王道C语言督学班目录》
本章需要掌握:
1、单链表删除i位置元素?
2、看考研真题,背一下?
3、考研真题2019
1、删除元素123456789101112131415161718//删除第i个位置的元素//删除时L是不会变的,所以不需要加引用bool ListDelete(LinkList L,int i){ LinkList p= GetElem(L,i-1);//拿到要删除结点的前一个结点 if(NULL==p) { return false; } LinkList q=p->next;//拿到要删除的结点指针 if(NULL==q)//当链表只有5个结点,删除第6个结点,出现这种异常情况时,避免程序崩溃 { return false; } p->n ...
11、单链表的新建、查找
🌺博客汇总:🌃Summary And Schedule🌠
🌸考研相关内容汇总:考研Schedule&&Summary
🌼408王道C督学课程目录:《王道C语言督学班目录》
本章需要掌握:
1、单链表怎么定义?
2、对单链表来说头插、尾插、查找(位/值)、插入i位置e操作代码。
1、头插、尾插、查找(位/值)、插入i位置e123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129#include <stdio.h>#in ...
10、线性表代码实战
🌺博客汇总:🌃Summary And Schedule🌠
🌸考研相关内容汇总:考研Schedule&&Summary
🌼408王道C督学课程目录:《王道C语言督学班目录》
本章需要掌握:
1、顺序表(静态分配)怎么定义?
2、打印PrintList、插入ListInsert、删除ListDelete、查找LocateElem
0、与408关联(大题)
会考到顺序表和链表,对表中内容进行操作
1、顺序表原理
什么是线性表?n个相同类型的元素组成的有序集合。
ai-1是ai的前驱,ai+1是ai的后继
2、顺序表初始化、插入、打印、删除、查找1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041 ...
YJango断墨循经
这个我之前跟过一段时间,做了不少笔记,我觉得这个过程是对我们学习过程的一个良性总结,我们可以对标。但是它只是总结,所以我们学习还是要以自己为主。
https://www.modevol.com
9、数据结构概述
🌺博客汇总:🌃Summary And Schedule🌠
🌸考研相关内容汇总:考研Schedule&&Summary
🌼408王道C督学课程目录:《王道C语言督学班目录》
本章需要掌握:
1、逻辑结构是什么?存储结构是什么?
2、T(n)时间复杂度的简单计算
3、S(n)空间复杂度为O(1)代表什么?
0、与408关联(选择+大题)本章需要掌握:
部分卷子小题也会考到时间复杂
基本上考到数据结构大题都需要设计算法的时间复杂度
1、逻辑结构与存储结构逻辑结构(抽象的):数据元素之间的逻辑关系。有集合结构、线性结构、树形结构、图形结构。
存储结构(具体的):数据结构在计算机中的表示。有顺序存储、链式存储、索引存储、散列存储。
顺序存储
链式存储
优
随机存取
充分利用存储单元
元素占空间少
不会出现碎片现象
缺
只能使用整块的存储空间
需要额外的空间存放指针
会出现碎片现象
只能实现顺序存取
2、时间复杂度与空间复杂度算法:对特定问题求解步骤的描述
算法的特征:有穷、确定、可行、输入、输出
时间复杂度: ...
08、结构体与C++引用讲解
🌺博客汇总:🌃Summary And Schedule🌠
🌸考研相关内容汇总:考研Schedule&&Summary
🌼408王道C督学课程目录:《王道C语言督学班目录》
本章需要掌握:
1、定义、初始化结构体、初始化结构体数组
2、什么是结构体对齐?结构体指针怎么用?指向结构体数组?指针偏移?
3、typedef重命名结构体
4、C++引用,再接往函数传入变量,函数拿到&变量,可以改变其值
1、结构体定义、初始化、结构体数组123456789101112131415161718192021222324252627#include <stdio.h>//定义struct student{ int num; char name[20]; char sex; int age; float score; char addr[30];}; //注意加分号int main(){ //1、初始化 struct student s={1001,&q ...
07、函数
🌺博客汇总:🌃Summary And Schedule🌠
🌸考研相关内容汇总:考研Schedule&&Summary
🌼408王道C督学课程目录:《王道C语言督学班目录》
本章需要掌握:
1、什么是定义宏,什么是函数库,怎么引用
2、递归,有结束条件,return到自身相关
3、局部变量和全局变量遵从就近原则
1、函数的声明预定义
#include <stdio.h> 尖括号是标准库
#include “func.h” func.c是自己写的函数库
函数的声明放到func.h 函数的实现放到 func.c 引用在main.c
在func.h用定义宏来防止重复定义
#ifdefine FUNC_H //如果没有定义过
#define FUNC_H //那么定义
#endif //结束
嵌套?函数内不可用定义函数,函数间可以相互调用。
2、递归12345678int f(int n){ if(m== ...
06、指针
🌺博客汇总:🌃Summary And Schedule🌠
🌸考研相关内容汇总:考研Schedule&&Summary
🌼408王道C督学课程目录:《王道C语言督学班目录》
本章需要掌握一些代码,就是简单的指针逻辑
1、如何定义一个指针,并用于构造函数,实现值传递
2、指针的偏移(指针指向一个数组后,指针+1代表指向元素+1,可以修改p=&a[3]指向第四个元素)
3、malloc一个空间,用strcpy、puts测试并free掉(malloc在 <stdlib.h>库)
1、指针的定义
本质:间接访问(指针p是指是一个地址值,*p是取其值)
12345678910#include <stdio.h>int main(){ int i = 5; int* p = &i; printf("i=%d\n",i); //直接访问 printf("*p=%d\n",*p); //间接访问 return 0; ...
05、一维数组与字符数组
🌺博客汇总:🌃Summary And Schedule🌠
🌸考研相关内容汇总:考研Schedule&&Summary
🌼408王道C督学课程目录:《王道C语言督学班目录》
本章需要掌握:
1、定义数组长度必须固定,定义数值数组两种方式int a[10]; 或 int a[10] = {0,0,0};
2、定义字符数组的三种形式,字符数组以’\o’结尾
3、scanf(“%s”,arr)、strlen(c)、strcat(c,d)加、strcpy(c,d)赋值给c、strcmp(c,d)比较-1/0/1
4、注:四个函数在<string.h>库
1、数组定义123456789101112#include <stdio.h>int main() { //1、定义方式一 int a[10]; int b[10]={1,2,3,4,5,6,7}; //2、定义方式二 char c[10]; char d[10]={ ...
04、选择和循环
🌺博客汇总:🌃Summary And Schedule🌠
🌸考研相关内容汇总:考研Schedule&&Summary
🌼408王道C督学课程目录:《王道C语言督学班目录》
本章重点?
1、if-else if-else
2、while
3、for( ; ; )
4、continue、break退出循环
一些注意:
scanf(“%s”,c)
1、if-elseif-else123456789101112131415161718192021222324252627282930#include <stdio.h>int main() { int i = 9; //1、if-else if(i>0)//不要在括号后加分号 { printf("i is bigger than O\n"); } else { printf("i is not bigger than O\n"); ...