1 Star 0 Fork 0

徐欣/考研数据结构

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
101.cpp 1.55 KB
一键复制 编辑 原始数据 按行查看 历史
xuxin 提交于 2024-10-18 23:56 . 10月18日提交
#include <stdio.h>
#include <time.h>
#include <iostream>
using namespace std;
#include <stdlib.h>
typedef struct LNode
{
int data;
struct LNode *next;
} LNode, *LNodeList;
void InitList_Head(LNodeList &L) // 头插法
{
L = new LNode;
L->data = 0;
L->next = NULL;
for (int i = 0; i < 10; i++)
{
LNodeList s = new LNode;
s->data = i;
s->next = L->next;
L->next = s;
}
}
void InitList_Tear(LNodeList &L) // 尾插法
{
L = new LNode;
// L->data = 0;
LNodeList r = L;
L->next = NULL;
srand(time(NULL));
for (int i = 1; i <= 30; i++)
{
LNodeList s = new LNode;
s->data = rand() % 20;
s->next = nullptr;
r->next = s;
r = s;
}
}
void printfList(LNodeList L) // 打印单链表
{
LNodeList q = L->next;
int i = 0;
while (q != NULL)
{
printf("%d ", q->data);
i++;
q = q->next;
}
printf("单链表长度:%d\n", i);
}
void Delete_Same_Node(LNodeList &head) // 删除重复结点
{
LNodeList p;
LNodeList q;
LNodeList s;
for (p = head; p; p = p->next)
{
// s = p;
for (q = p->next, s = p; q;)
{
if (p->data == q->data)
{
s->next = q->next;
delete q;
q = s->next;
}
else
{
s = q;
q = q->next;
}
}
}
}
int main()
{
LNodeList A;
InitList_Tear(A); // 尾插法
printfList(A);
Delete_Same_Node(A);
printfList(A);
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/xxaizmy/DataStructure.git
git@gitee.com:xxaizmy/DataStructure.git
xxaizmy
DataStructure
考研数据结构
main

搜索帮助