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

做网站和推广需要多少钱源码交易平台

做网站和推广需要多少钱,源码交易平台,杭州在线制作网站,wordpress模板制作软件线性表-链式存储-单链表 代码实现 代码实现 #include<stdio.h> #include<stdlib.h> #include<stdbool.h>//定义元素数据类型 #define ElemType int//定义结点结构体 typedef struct LNode {//数据域&#xff0c;说白了就是存放当前节点的数据的。ElemType d…

线性表-链式存储-单链表

  • 代码实现


代码实现

#include<stdio.h>
#include<stdlib.h>
#include<stdbool.h>//定义元素数据类型
#define ElemType int//定义结点结构体
typedef struct LNode {//数据域,说白了就是存放当前节点的数据的。ElemType data;//指针域,就是存放这个节点指向的下一个节点的地址struct LNode *next;
} LNode, *LinkList;   //LinkList就是LNode的代指//函数声明
bool Empty(LinkList L);//初始化链表
void InitList(LinkList *L) {//给链表的开头的结点分配一个LNode结构体大小的内存空间*L = (LinkList) malloc(sizeof(LNode));//将后继结点设置为NULL,也就是现在只有这一个节点(*L)->next = NULL;
}//头插法建立单链表
LinkList ListInsert_Head(LinkList *L) {InitList(L);ElemType Elem;printf("请输入要插入的元素数据(输入0结束):");scanf("%d", &Elem);while (Elem != 0) {//建立一个新的节点LinkList newNode = (LinkList) malloc(sizeof(LNode));newNode->data = Elem;newNode->next = (*L)->next;(*L)->next = newNode;scanf("%d", &Elem);}return *L;
}//尾插法建立单链表
LinkList ListInsert_Tail(LinkList *L) {InitList(L);ElemType Elem;LNode *p,*r = (*L);printf("请输入要插入的元素(输入0结束):");scanf("%d", &Elem);while (Elem != 0) {p = (LinkList) malloc(sizeof(LNode));p->data = Elem;p->next = NULL;r->next = p;r = p;scanf("%d", &Elem);}return *L;
}//求单链表表长
int Length(LinkList L) {//新建一个移动结点,负责遍历链表,因为有头结点,所以移动结点从头结点的下一个结点算起LNode *p = L->next;//定义int变量,用于统计链表长度int num = 0;while (p != NULL) {num++;p = p->next;}return num;
}//按值查找操作
//int LocateElem(LinkList L, ElemType Elem) {
//    //定义移动指针,指向头结点的下一个位置
//    LNode *p = L->next;
//
//    //定义当前索引,初始值为1,因为头结点为0
//    int index = 1;
//
//    //如果当前节点数据不为要寻找的那个值,就继续循环
//    while (p != NULL && p->data != Elem) {
//        index++;
//        p = p->next;
//    }
//    if (p == NULL) {
//        return -1;
//    }
//    return index;
//}
/*------------------------上面写了个返回位置,其实应该返回结点----------------------------*///按值查找操作(返回结点)
LNode *LocateElem(LinkList L, ElemType Elem) {LNode *p = L->next;while (p != NULL && p->data != Elem) {p = p->next;}return p;
}//按位查找操作(返回结点)
LNode *GetElem(LinkList L, int index) {LNode *p = L->next;if (index > Length(L)) {printf("索引超出链表长度!\n");return NULL;}//为什么要大于1呢,因为0是头结点。while (index > 1) {p = p->next;index--;}return p;
}//插入操作
void ListInsert(LinkList *L, int index, ElemType Elem) {if (index > Length(*L)) {printf("索引超出链表长度!\n");return;}//建立临时移动结点LNode *p = (*L);//建立新节点LinkList new;InitList(&new);new->data = Elem;//先找到index位置的上一个节点while (index > 1) {p = p->next;index--;}//把插入位置的上一个节点的下一个节点赋值给新节点new->next = p->next;p->next = new;
}//删除操作
void ListDelete(LinkList *L, int index) {if (index > Length(*L)) {printf("索引超出链表长度!\n");return;}//其实前面有索引判断了,这个判空好像没用if (Empty(*L)) {printf("删除失败,链表为空!\n");return;}LNode *p = (*L);//找到删除位置的上一个节点while (index > 1) {p = p->next;index--;}p->next = p->next->next;
}//判空函数
bool Empty(LinkList L) {if (L == NULL || L->next == NULL) {return true;}return false;
}//销毁单链表
void DestroyList(LinkList *L) {//定义移动结点LNode *p = (*L);while (p != NULL) {//定义一个地址信息保存pLNode *temp = p;p = p->next;free(temp);}//将头结点设置为空*L = NULL;}//打印链表数据
void PrintList(LinkList L) {if (Empty(L)) {printf("链表为空!\n");return;}//新建一个LNode结点结构体p,并将链头结点的后继设置为这个结点的后继LNode *p = L->next;printf("链表中的元素为:");//当下一个结点不为空的时候,一直打印while (p != NULL) {printf("%d ", p->data);p = p->next;}printf("\n");
}int main() {//定义头结点LinkList head;//定义元素值ElemType Elem;//定义索引int index;//头插法建立链表
//    head = ListInsert_Head(&head);//尾插法建立链表head = ListInsert_Tail(&head);//打印链表PrintList(head);//输出链表长度printf("链表长度为:%d\n", Length(head));//查找指定元素值的对应值(搁这搁这呢)printf("请输入要查找的元素的值:");scanf("%d", &Elem);printf("值为%d的元素的值为%d\n", Elem, LocateElem(head, Elem)->data);//查找指定位置的对应值printf("请输入要查找的元素的位置:");scanf("%d", &index);printf("位置为%d的元素的值为%d\n", index, GetElem(head, index)->data);//插入元素printf("请输入要插入的元素的位置:");scanf("%d", &index);printf("请输入要插入的元素的值:");scanf("%d", &Elem);ListInsert(&head, index, Elem);printf("插入元素后的链表:\n");PrintList(head);//删除元素printf("请输入要删除的元素的位置:");scanf("%d", &index);ListDelete(&head, index);printf("删除元素后的链表:\n");PrintList(head);//销毁链表DestroyList(&head);printf("销毁后的链表:\n");PrintList(head);
}
http://www.hrbkazy.com/news/8249.html

相关文章:

  • 乡村生态旅游网站建设方案腾讯会议多少钱一个月
  • 长沙域名注册公司单页网站seo如何优化
  • 购物网站策划方案seo编辑招聘
  • 帮卖货平台seo学院
  • php网站游客试用怎么做百度本地惠生活推广
  • 我的常德南京seo招聘
  • 浙江温州疫情最新消息今天封城了长春网站优化平台
  • 怎样宣传网站站长工具国色天香
  • 模仿做网站seo数据是什么意思
  • 莫名接到网站建设电话制作一个网站步骤
  • 服务好质量好的网站制作做网络推广一般是什么专业
  • 河南住房和城乡建设网站平台运营
  • 力软框架做网站相关搜索优化软件
  • wp打开wordpress济宁seo推广
  • 平面设计做名片都去那个网站常用的搜索引擎
  • 做网站兼容ie网络推广的渠道和方式有哪些
  • 深圳龙岗网站建设公司关键词优化的策略
  • 网站需要什么费用虎门今日头条新闻
  • wordpress 加下载武汉seo楚天
  • 毕业设计代做淘宝好还是网站好seo人人网
  • win7电脑做网站主机网站制作报价
  • 中国还有多少人没有打新冠疫苗北京网站seowyhseo
  • 网页制作模板菜鸟seo优化的常用手法
  • 最好的动态网站建站重庆百度竞价推广
  • 巴州移动网站建设最近新闻头条
  • 旅游网站分析百度网盘网页版入口官网
  • 网易企业邮箱可以保存多少邮件深圳seo优化外包公司
  • 网站建设企业服务seo推广是做什么的
  • 河南做网站免费十八种禁用网站
  • 网站开发公司招聘技术人员电商代运营