自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 结构体对齐问题

如何计算结构体的大小 结构体变量的首地址,必须是结构体变量中"最大基本数据类型所占字节"的整数倍 结构体变量中的每个成员相对于结构体首地址的偏移量都是该成员基本数据类型所占字节的整数倍 结构体变量的总大小,为结构体变量中"最大基本类型数据成员所占字节数"的整数倍 对齐原因 平台原因(移植原因) 不是所有的硬件平台都能访问任意地址的任意数据,某些硬件平台只能在某些地址处取某些特定类型的数据的,否则抛出硬件异常。 性能原因 数据结构(尤其是栈),应该尽可能在自然..

2021-11-14 22:58:49 286 1

原创 两个队列实现一个栈

首先明白两个概念栈:先入后出队列:先入先出队1操作:入数据队2操作:若队列1 2都不为空从将队列1中除队尾元素全部移至队列2 队列1对头出 若队列2为空 将队列1中除队尾元素全部移至队列2 队列1对头出 若队列1为空 将队列2中除队尾元素全部移至队列1 队列2对头出总结可得:当队1 为空时 需要将队列2中除队尾元素全部移至队列1 队列2对头出队1不为空时,将队列1中除队尾元素...

2021-11-12 21:11:12 339

原创 两个栈实现一个队列C

首先明白两个概念栈:先入后出队列:先入先出我们规定入栈1,出栈2入:入栈1出:此时分为两种情况。若栈2为空,则将栈1所有元素移入栈2,从栈2栈顶出即可若栈2不为空,直接从栈2栈顶出即可以下为代码实现:初始化void my_Init_queue(PTSTqueue pq) { assert(pq != NULL); Init_Stack(&pq->s1); Init_Stack(&pq->s2);}由于是两个栈实现一

2021-11-09 23:26:59 782

原创 链式队列的实现

数据节点//有效数据节点结构体设计typedef struct Lqueue{ ELEM_TYPE data;//数据域 Lqueue *next;//指针域}Lqueue, *PLqueue;头节点typedef struct Head{ Lqueue *front;//指针域 指向第一个有效数据节点 Lqueue *tail; //指针域 指向最后一个有效数据节点}Head, *PHead;初始化void Init_lqueue(PHead pq) { as

2021-11-09 23:12:05 260

原创 带头节点的单链表

单链表特点:逻辑上相邻,物理上不一定相邻头插o(1) 随机插入以及尾插 o(n)头删o(1) 按位置按值删除或尾删 o(n)查找 o(n)结构体设计:typedef struct Node { int data; Node* next;}Node,*PNode;初始化函数:void Init_list(PNode plist) { assert(plist != NULL); //plist->data 头节点数据域不使用 plist->next

2021-10-29 22:57:18 175

原创 线性表的顺序表示和实现

线性表(linear list)是数据结构的一种,一个线性表是n个具有相同特性的数据元素的有限序列。数据元素是一个抽象的符号,其具体含义在不同的情况下一般不同。线性表具有以下特点:1.简单 好实现2.逻辑上相邻,物理上也相邻3.插入的时间复杂度为o(n) 尾插的时候时间复杂度为o(1)4.删除时间复杂度o(n) 尾删除的时间复杂度为o(1)5.随机访问时间复杂度为o(1) 有数组下标帮忙线性表结构体设计:typedef int ELEM_TYPE;#define I

2021-10-10 22:27:27 60

原创 c语言单链表的逆置

单链表的逆置方法一:头插void Reverse(Node* plist) { assert(plist != NULL&&plist->next!=NULL); Node* p = plist->next; Node* q; plist->next = NULL; while (p != NULL) { q = p->next; p->next = plist->next; plist->next = p; p

2021-10-08 13:38:26 2583

空空如也

空空如也

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

TA关注的人

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