自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 自学数据结构第十一天

今日总结1,单链表按位插入平均时间复杂度为O(n),其中如果带头结点的话,那么在表头插入也是不需要改变操作的,但如果不带头结点的话,需要更改头指针2,单链表指定结点的前插操作可以转换成先找到指定结点之前的那个结点,再进行后插操作,时间复杂度为O(n),还有一种方法,直接再该节点进行后插操作,然后把数值进行互换,这种方法时间复杂度为O(1)3,单链表的指定结点删除,如果该结点不是最后一个结点,可以先声明指针指向后继结点,然后把后继结点的数据元素赋值给该结点,再把该结点的指针指向后继结点的指针指向结点,再

2022-01-08 20:36:42 171

原创 自学数据结构第十天

今日总结:1,栈的插入删除操作只能在栈顶进行2,注意++操作前后顺序的区别,有两种方式,一种是top为-1,一种是top为03,为了增加内存的利用率,采用共享栈,可以定义两个指针,栈满的条件为两个下标之差为1...

2022-01-03 09:26:24 163

原创 自学数据结构第九天

今日总结:1,静态链表是分配了一片连续的内存空间,但不同于顺序表,逻辑结构并不一定是顺序的2,顺序存储的优点:支持随机存取,存储密度高缺点:大片连续空间分配不方便,改变容量不方便;链表优点:离散的小空间分配方便,改变容量方便缺点:不可随机存取,存储密度低3,顺序表和链表的插入和删除元素时间复杂度虽然都为O(n),顺序表的是件开销主要用来移动元素,链表的时间开销主要来自查找目标元素...

2021-12-30 22:44:44 376

原创 自学数据结构第八天

今日总结:1,判断循环单链表是否为空,只需要判断头结点的next是否指向自己2,判断循环双链表是否为空,只需判断头结点的prior和next是否都指向自己3,

2021-12-29 20:14:04 47

原创 自学数据结构第七天

今日总结:1,双链表的前插操作可以通过找到该结点的前驱结点再后插操作2,可以通过遍历来实现操作,所以双链表的插入删除,时间复杂度均为O(n)

2021-12-28 21:39:37 122

原创 自学数据结构第五天

今日总结:1,单链表的按值查找按位查找,以及求单链表的长度时间复杂度都为O(n)2,单链表进行定义时除了用typedef改结构类型名为还可以同时更改结构体指针变量名,其中lnode*强调是结点,linklist强调的是整个链表...

2021-12-20 20:02:25 310

原创 自学数据结构第四天

今日总结:1,单链表如果不带头结点,要在表头插入,删除则需要更改指针L

2021-12-19 21:30:00 415

原创 自学数据结构第三天

今日总结:1,typedef关键字用于数据类型重命名,格式为:typedef〈数据类型〉〈别名〉2,在单链表中linklist强调链表,LNode强调是结点3,单链表的定义需要一个节点和一个指针

2021-12-18 21:21:59 455

原创 自学数据结构第二天

今日总结:1,顺序表的按位查找,时间复杂度为O(1),只要知道表头地址和每个元素的大小,就能找到任意一个元素,具有随机存取特性2,顺序表的按值查找,时间复杂度最好为O(1),最坏时间复杂度为O(n),平均时间复杂度为O(n)3,顺序表的按值查找,如果要比较两个结构类型,不能用判断相等的符号,要按相同类型比较...

2021-12-17 20:26:32 165

原创 自学数据结构第一天

今日总结:1,顺序表的插入,是把第i个元素之后的元素全部后移,把第i个元素改为插入的值,总长度加一2,顺序表的删除,是把被删除的元素赋值给变量,再将第i个元素后的元素前移,总长度减一...

2021-12-16 22:08:59 355

原创 自学C语言第二十一天(C语言初阶内容已学完)

今日总结:1,结构体传参的时候,参数是需要压栈的。如果传递一个结构体对象的时候,结构体过大,参数压线的系统开销比较大,所以导致性能的下降2,对于宏,是一种预处理命令,不占用任何空间,是一种替换命令3,对于实参形参的理解进一步加深,形参只在运行时开辟内存,相当于临时拷贝,使用函数传参时,尽量去传址调用,不要传值调用,传址调用后能够把改变的值带回来至此C语言学习暂时告一段落,明天开始,全面攻克数据结构,我会继续加油...

2021-12-15 20:05:20 802

原创 自学C语言第二十天

今日总结:1,结构体就是一些值的集合,这些值称为成员变量。结构体的每个成员可以是不同类型的变量2,结构体成员的类型可以是标量,数组,指针,甚至是其他结构体3,结构体变量的成员是通过操作符·访问的...

2021-12-14 21:02:13 331

原创 自学C语言第十九天

今日总结:1,可以把数组名当成地址放到一个指针中,通过指针也可以找到数组里的元素2,二级指针,也就是指向指针的指针,用来存放指针地址的,以此类推,三级指针,四级……3,指针数组,即每个元素都是指针的数组明日学习:结构体...

2021-12-13 20:08:35 182

原创 自学C语言第十八天

今日总结:野指针就是指向位置未知,野指针的成因有:1,指针未初始化2,指针越界访问3,指针指向的空间已经释放了规避野指针的方法有:1,指针初始化2,小心指针越界3,指针指向空间释放后马上置NULL4,避免返回局部变量的地址5,指针使用之前检查有效性指针减指针获得是地址内容相隔的个数指针可以比较大小...

2021-12-12 20:57:04 494

原创 自学C语言第十七天

今日总结:1,逗号表达式,从左到右依次执行,整个表达式的结果是最后一个表达式的结果2,指针的类型决定了对指针解引用的时候能有多大权限,即能操作几个字符。指针类型也决定了向前或向后走一步有多大...

2021-12-11 21:02:16 372

原创 自学C语言第十六天

今日总结:1,sizeof求变量的大小可以不用括号2,++和——操作符分为前置和后置,前置是先计算后使用,后置是先使用后计算3,~是按二进制位取反

2021-12-10 20:05:31 281

原创 自学C语言第十五天

今日总结:1,%操作符的两个操作数必须为整数 返回的整除之后的余数2,/操作符如果两个都为整数,执行整数除法,只要有浮点数就是浮点数除法3,左移操作符规则是左边抛弃,右边补零4,右移操作符分两种:第一种逻辑移位,左边补0,右边丢弃第二种算术移位,左边补原符号,右边丢弃5,按位异或,按二进制位异或(相同为0,相异为1)...

2021-12-09 21:18:04 274

原创 自学C语言第十四天

今日总结:1,二维数组如果有初始化,行可以省略,列不能省略2,数组作为函数参数时,传递的是首元素的地址,而不是把整个数组传递过去3,数组名表示的是数组首元素地址,只有在sizeof(数组名),&数组名表示的是整个数组...

2021-12-08 22:11:56 273

原创 自学C语言第十三天

今日总结:1,一维数组的初始化可以完全初始化也可以不完全初始化,如果不完全初始化,其他元素默认为0。2,数组的初始化[]里面要给一个常量才可以。3,数组是通过下标来引用的,下标从0开始4,数组在内存中是连续存放的明日任务:学习二维数组...

2021-12-07 22:27:01 88 3

原创 自学C语言第十二天

今日总结1,如果要求那种正负交替求和,可以再每次加完之后,赋值为相反数,进行简化。2,如果要判断个位是否为某个数,可以用他模10,判断结果是否等于某个数,如果判断十位是否为某个数,可以用他除10,判断结果是否为某个数,如果是百位,除100,以此类推...

2021-12-06 22:14:49 262

原创 自学C语言第十一天

今日学习:goto语句的使用,可以帮助我们跳出多层循环,而break只能一层层的跳出,所以此时goto语句可以实现快速跳出,大大提高效率,然后goto其实就是一个跳转,然后跳转到另一块然后执行,实际上goto不需要的...

2021-12-05 23:02:16 170

原创 求100到200之间的素数(质数)

今天试着讲一下这道题目,求100到200之间的素数分析:第一步,产生100到200之间的数可以用for循环定义一个变量i//for循环:int i = 0;for (i= 100; i <= 200; i++)第二步,判断是不是素数定义一个变量j用for循环产生2到i-1一直去除i看余数是否为0,如果一直不等于0跳出循环与此同时如果i==j,那么这个数就是素数,如果等于0,我们也让他跳出循环为什么要满足i==j 才是素数呢?因为如果余数为零跳出循环,此时这

2021-12-03 22:57:51 11620 2

原创 自学C语言第七天

今日总结:1,switch语句里面break是用来实现分支的,如果没有break就会一直执行下去,如果表达的值与所有case都不匹配,可以加上default,default是可以写在任意位置的2,把三个数按从大到小排列,可以先比较前两个,如果前者小,创建一个临时变量来实现交换两个值,以此类推,但这种方法很笨3,求两个数的最大公约数,普通方法是把小的那个数用来分别除,如果模等于0,则就是最大公约数,较小的数每次减一,一直循环;辗转相除法更加便捷,用大的数除以小的数,然后再用结果除以除数直到结果为0,最后

2021-12-02 21:55:59 47

原创 自学C语言第六天

今日总结:1,循环里,看到break就永久停止循环,看到continue,只会终止本次循环continue后面的语句2,不建议在for循环内部修改循环变量,防止for循环失去控制,同时for循环的初始化,判断部分,调整部分都是可以省略的3,do while语句和while的区别在于do while先执行语句后判断,所以循环至少执行一次,while循环是先判断后执行。for循环要比while循环看起来更舒服,也更常见![在这里插入图片描述](https://img-blog.csdnimg.cn/7

2021-12-01 22:18:12 50

原创 自学C语言第五天

今日总结:1,进行递归时要考虑栈溢出问题2,一般来说,迭代要比递归效率更高,代码可读性较差一些3,至于一个问题该用递归还是迭代我还没想清楚关于函数递归,迭代,循环的理解还比较模糊,希望通过学习进一步加深理解...

2021-11-30 22:08:15 47

原创 自学C语言第四天

C语言总结:1,进一步加深指针和指针变量的理解,指针就是变量的地址,而指针变量是用来存放地址的变量,指针并不是指针变量的简称。变量前面加个&就是指针,把这个值赋值给p,变量名带的,就是指针变量2,函数的递归,这块刚开始听的好晕首先函数的递归和嵌套不一样,函数嵌套是在函数内部调用其他函数,而函数递归是在函数内部调用自身,有点烧脑,函数递归要满足两个必要条件:1,存在限制条件,当满足这个限制条件时,递归便不再继续;2,每次递归调用之后越来越接近这个限制条件。数据结构总结:1,算法的五大特性只是

2021-11-29 21:40:37 181

原创 自学C语言第三天

C语言今日总结:1,一个函数如果不写返回类型,默认返回int类型2,数组传参,实际上传递的不是数组本身,而是传过去数组首元素的地址3,函数不能嵌套定义,但是可以嵌套调用4,函数声明一般放在头文件中...

2021-11-28 21:56:53 126

原创 自学C语言第二天

今日收获:1,函数不一定要有返回值,可以定义空类型,不需要返回2,函数的参数有形参和实参两种。实参必须有确定的值,它可以是常量,变量,表达式,甚至函数。形参一般是在定义时,而且他的作用效果只在函数内部,函数调用完自动销毁...

2021-11-27 22:36:41 115

原创 自学C语言第一天

这是我的第一篇博客(机械跨考计算机)今天是准备跨考计算机第二个星期,之前各种原因没有开始写第一篇博客,在此准备每天写点知识总结和感悟,并且共同记录跨行的过程。如果有任何错误,欢迎指正今日总结:C语言1,如果要写多个语句,可以加上大括号,但是如果只有一条语句,也最好加上,因为方便以后贴加修改。2,定义一个变量要初始化,至于原因我现在还是不太理解...

2021-11-26 17:02:33 289

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除