自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 找单链表的倒数第K个节点

令一个指针先从表头走K-1步,从第K步开始,另一个指针也从表头开始遍历,当第一个指针遍历到链表末尾时,第二个指针刚好指向链表的倒数第K个节点。LNode *find_KtoTail(LNode *head, int k){ if(head != NULL && k>0) { LNode *p_first = head; ...

2020-01-11 20:06:12 152

原创 判断单链表是否存在环

判断单链表存在环与否,可利用快慢指针,设慢指针一次走一步,快指针一次走两步。让两指针开始的时候都指向表头,循环执行,直达两指针相遇,即快指针追上慢指针,或者快指针走到链表尾部。前一种情况说明链表存在环,后一种情况无环。bool isLoop(LNode *head){LNode *p=head;LNode *q=head;while(p->next != NULL){p = p...

2020-01-11 19:56:15 219

原创 删除无头指针的单链表中的一个节点

设一个没有头结点指针的单链表,有一指针指向此单链表中一个结点(非第一个,也非最后一个结点),将该结点从单链表中删除,要求时间复杂度O(1)。没有头指针,则不可能遍历该单链表,况且要求时间复杂度为是常数,则可交换要删除节点(p)和该节点的下一个节点(p->next)的数据域,然后问题转换为删除p节点的下一个节点。q=p->next;p->data=q->data;p-...

2020-01-11 18:59:43 604

原创 指针、数组、引用

指针与数组(1)指针用于保存数据的地址,数组用于保存数据,数组名代表数组首元素的首地址(2)指针间接访问数据,数组则是直接访问数据(3)指针通常用于动态数据结构,数组通常用于存储固定数目且类型相同的元素(4)指针的大小恒定不变,在32位系统下永远是4个字节,数组的大小由自己指定(5)同类型的指针之间可以直接赋值、相互比较,而数组之间不能直接赋值、比较(6)指针可以指向函数,即函数指...

2020-01-07 17:51:43 187

原创 重载、覆盖与隐藏区别

函数重载函数名相同,作用域相同,参数列表不同,不能靠返回值类型区别是否重载,const成员函数可以构成重载,因为this指针作为默认的参数,对const和非const成员函数是不同的。不靠virtual区分。class …{virtual int fun();void fun(int);void fun(int)const;int fun(double);};函数覆盖类...

2020-01-04 12:17:42 105

原创 const修饰符

const修饰的只读变量如下定义是错误的,因为C编译器并不知道其在编译期间的值。const int SIZE=10;int buf[SIZE];const修饰指针指向const的指针:指针可变,指针所指对象不可变const int *p;int const *p; //p可变,p指向的对象不可变const指针:指针不可变,指针所指对象可变int * const p; ...

2020-01-02 20:55:49 105

原创 static修饰符

1.不考虑类,即在C语言中,关键字static主要用于修饰变量和函数。修饰变量修饰变量时,static可以使变量具有默认初始值0,包括未初始化的全局与局部静态变量。静态全局变量:作用域仅限于变量被定义的文件内,即从定义之处开始知道本文件结束的区域,若在定义之前使用该静态变量,需要加关键字extern。静态局部变量:作用域仅限于函数体内,但生存周期为整个程序(因为static修饰的变量位...

2019-12-31 12:20:06 248 1

原创 内存分区及内存管理

内存分区堆:由程序员手动分配(malloc和new)和释放(free和delete),若不手动释放,会造成内存泄漏。当程序结束时会由系统释放申请的内存。栈:由编译器自动分配和释放的,用于存放函数的参数,函数内的局部变量等,函数执行结束时这些存储单元自动释放。静待存储区:由编译器在编译的时候分配,用于存放全局变量和静态变量(全局和局部),包括DATA段(全局初始化区)与BSS段(全局未初始化...

2019-12-28 13:54:44 352

空空如也

空空如也

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

TA关注的人

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