当前位置: 首页 > wzjs >正文

青园网站建设企业seo排名哪家好

青园网站建设,企业seo排名哪家好,建设市民中心网站,盘锦做网站公司目录 1.单链表 1.1 实现单链表 1.1.1 文件创建 1.1.2 链表功能了解 1.1.3 链表的结点 1.1.4 链表的函数声明 1.1.5 链表功能的实现 链表是一种链式结构,物理结构不连续,逻辑结构是连续的,在计算机中链表的实际存储是按照一个结点内存放…

目录

1.单链表

1.1 实现单链表

1.1.1 文件创建

1.1.2 链表功能了解

1.1.3 链表的结点

1.1.4 链表的函数声明

1.1.5 链表功能的实现


链表是一种链式结构,物理结构不连续,逻辑结构是连续的,在计算机中链表的实际存储是按照一个结点内存放下一个结点的地址来实现链接的

1.单链表

单链表也称不带头无循环单向链表

链表的概念相信大家都了解,说的再多不如自己实现一个链表来的理解深入

我们现在开始手搓一个单链表出来

1.1 实现单链表

1.1.1 文件创建

首先我们创建一个头文件slist.h,用来包含头文件和函数的声明

再创建一个源文件slist.c,用来函数的实现

最后创建一个main.c来测试我们的单链表功能

这样我们的代码耦合性会更高,以后哪里需要单链表去完成什么功能直接使用当前的文件就可以了

好了!现在我们可以开始愉快的写代码了

1.1.2 链表功能了解

  1. 单链表的申请元素
  2. 单链表的初始化
  3. 单链表的头部插入删除
  4. 单链表的尾部插入删除
  5. 单链表的pos位置之后的插入删除
  6. 单链表的打印元素

好了了解这些功能建议不要立即去抄代码,而是自己带着功能去自己试着实现,这样理解的更深刻

1.1.3 链表的结点

单链表只保存下一个结点的地址,所以结点是很简单的

#pragma once
#include<stdio.h>
#include <stdlib.h>
#include <assert.h>
typedef int SListNodeDataType; //将需要存入链表的元素类型typedef,代码耦合性变低
typedef struct SListNode	//将链表结点类型typedef为Slist
{SListNodeDataType _val;	//链表保存的数据struct SListNode* _next;//链表的下一个结点的地址
}SList;

1.1.4 链表的函数声明

SList* CreateSLNode(SListNodeDataType val);	//创建新结点
void SListPushBack(SList** st, SListNodeDataType val);//尾插
void SListPopBack(SList** st);//尾删
void SListPushFront(SList** st, SListNodeDataType val);//头插
void SListPopFront(SList** st);//头删
void SListInsert(SList** pos, SListNodeDataType val);//pos位置之后的插入
void SListErase(SList** pos);//pos位置之后的删除
void SListPrint(SList* st);//打印链表元素

这些都是存放在slist.h中的

将函数的实现放在slist.c中

1.1.5 链表功能的实现

#include"slist.h"SList* CreateSLNode(SListNodeDataType val)
{SList* newNode = (SList*)malloc(sizeof(SList));assert(newNode);newNode->_next = NULL;newNode->_val = val;return newNode;
}
void SListPushBack(SList** st, SListNodeDataType val)
{if (*st == NULL){*st = CreateSLNode(val);return;}SList* cur = *st;while (cur->_next){cur = cur->_next;}cur->_next = CreateSLNode(val);
}
void SListPopBack(SList** st)
{assert(*st);SList* cur = *st;SList* prev = *st;while (cur->_next){prev = cur;cur = cur->_next;}free(cur);prev->_next = NULL;
}
void SListPushFront(SList** st, SListNodeDataType val)
{SList* newNode = CreateSLNode(val);newNode->_next = *st;*st = newNode;
}
void SListPopFront(SList** st)
{assert(*st);SList* cur = *st;*st = cur->_next;free(cur);
}
void SListInsert(SList** pos, SListNodeDataType val)
{assert(*pos);SList* newNode = CreateSLNode(val);SList* cur = *pos;newNode->_next = cur->_next;cur->_next = newNode;}
void SListErase(SList** pos)
{assert(*pos);SList* cur = *pos;SList* tmp = cur->_next;if (cur->_next){cur->_next = cur->_next->_next;}free(tmp);
}
void SListPrint(SList* st)
{SList* cur = st;while (cur){printf("%d ", cur->_val);cur = cur->_next;}printf("\n");}

http://www.dtcms.com/wzjs/39057.html

相关文章:

  • 企业网站分析报告网站收录一键提交
  • asp网站模板安装seo外包 靠谱
  • 公司做网站还是做阿里好呢郑州seo网络营销
  • 免费网站模板mbxzbseo关键词首页排名代发
  • 卦神岭做网站市场营销四大基本策略
  • 织梦网站+当前位置限制宽度旺道seo
  • 做外贸的要有自己的网站吗整站seo教程
  • 可靠的手机网站建设优化搜索曝光次数的方法
  • 网站建设与维护是什么意思自己如何注册网站
  • 手机网页设计公司知名的搜索引擎优化
  • 电子商城网站设计公司哪个好无锡整站百度快照优化
  • 类似中企动力的做网站的清远今日头条新闻
  • 如何做一个公司网站济南seo整站优化厂家
  • ...温岭做网站网站制作和推广
  • 建设局和住建局区别武汉百度推广seo
  • 网站的用户登录一般怎么做的广州市口碑seo推广
  • 做网站能赚钱吗表情包拉新推广平台有哪些
  • 乌鲁木齐网站建设外链平台
  • wordpress域名更换插件简述seo的基本步骤
  • 朝阳网站建设是什么网站如何优化排名
  • 做公司网站需要注意什么网站换友链平台
  • 有没有做宠物的网站网络营销公司热线电话
  • 中国官方网站网站管理与维护
  • 做网站推广前途阿里巴巴国际站关键词推广
  • 企业管理咨询类公司在线seo短视频
  • 网站ip地址大全网络营销过程步骤
  • 销售助手app最新版本竞价托管优化公司
  • 程序员是不是都是做网站的企业网站有哪些类型
  • 怎么做网站的搜索引擎百度站长工具平台
  • wordpress整站无法打开合肥网站排名