C语言数据结构循环双链表

2023-11-09

#include<stdio.h>
#include<stdlib.h>
typedef int elemtype;
typedef struct DLNode
{
    elemtype data;
    struct DLNode* next, * front;
}DLNode, * DListlink;
DLNode* Creatlist1(DListlink& L, int n)
{
    L = (DLNode*)malloc(sizeof(DLNode));
    DLNode* r = L;
    int x;
    int i = 0;
    DLNode* q;
    printf("请输入你要插入的数:\n");
    while (i < n)
    {
        q = (DLNode*)malloc(sizeof(DLNode));
        scanf_s("%d", &x);
        q->data = x;
        r->next = q;
        q->front = r;
        r = q;
        i++;
    }
    r->next = L;
    L->front = r;
    return L;
}
DLNode* Creatlist2(DListlink& L, int n)
{
    L = (DLNode*)malloc(sizeof(DLNode));
    L->next = NULL;
    DLNode* r = L;
    int x;
    int i = 0;
    DLNode* q;
    printf("请输入你要插入的数:\n");
    while (i < n)
    {
        q = (DLNode*)malloc(sizeof(DLNode));
        scanf_s("%d", &x);
        q->data = x;
        q->next = L->next;
        if (L->next != NULL)
        {
            L->next->front = q;
        }
        q->front = L;
        L->next = q;
        i++;
    }
    for (int i = 0; i < n; i++)
    {
        r = r->next;
    }
    r->next = L;
    L->front = r;
    return L;
}
void Printflist1(DListlink L,int n)
{
    int i = 0;
    L = L->next;
    while (i<n)
    {
        printf("%4d", L->data);
        L = L->next;
        i++;
    }
    printf("\n");
}
void Printflist2(DListlink L, int n)
{
    int i = 0;
    L = L->front;
    while (i < n)
    {
        printf("%4d", L->data);
        L = L->front;
        i++;
    }
    printf("\n");
}
int main()
{
    DLNode* L;
    Creatlist1(L, 3);
    Printflist1(L,3);
    Printflist2(L, 3);
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C语言数据结构循环双链表 的相关文章

  • 低成本副业:开发小程序商城攻略

    随着互联网的普及和电子商务的兴起 越来越多的人选择做点副业 其中开发小程序商城是一个不错的选择 相比传统的实体店 小程序商城的成本更低 而且门槛更低 可以让更多的人参与到副业中来 那么 如何开发自己的小程序商城呢 下面为大家介绍步骤和技巧
  • STM32中遇到的问题--关于串口的一些常见问题

    在单片机的开发过程中 最常用的外设就是串口了 是用来进行bug纠错 log输出的常用工具 也是用来与外部通讯的常见协议之一 但是在使用串口的过程中难免会遇到一些问题 下面就我在工作遇到的一些问题做了一些记录 与大家分享 其实也是为了自己在以
  • [云原生专题-39]:K8S - 核心概念 - 存储抽象- pod配置文件的挂载ConfigMap

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 122856681 目录 前言 第1章
  • 安卓逆向入门指南:应用分析与反编译

    安卓逆向入门指南 应用分析与反编译 概述 简要介绍安卓逆向工程的基本概念和背景 解释逆向工程的目的和重要性 以及在安全审计和应用研究中的应用 应用分析 安卓应用文件结构的解析 介绍APK文件的结构 包括AndroidManifest xml

随机推荐

  • c#中new 后面大括号

    C new一个对象的时候 后面的参数不是用小括号吗 下面的大括号是怎么回事 不是数据为什么会用大括号 BarcodeWriter barcodeWriter new BarcodeWriter Format ZXing BarcodeFor
  • jmap、jstat、jinfo、jstack命令详解

    jmap jmap histo pid gt log txt 此命令可以用来查看内存信息 实例个数以及占用内存大小 num 序号 instances 实例数量 bytes 占用空间大小 class name 类名称 C is a char
  • Windows中.exe程序的启动过程和C/C++运行时库<转载>

    很是受益 Windows中 exe程序的启动过程和C C 运行时库 lt 转载 gt Windows系统中 exe后缀的文件一般可以双击运行 编程时 编译出来的最终结果一般也表现为一个exe程序和其他的为程序执行提供支持的dll 我们双击一
  • Unity3d-简单AR游戏

    Unity3d 简单AR游戏 一 图片识别与建模 Vufria模块的导入 首先是安装Vuforia 模块 2017版本后的可以直接使用Unity Hub安装 安装完成后可以直接在软件中使用 然后在菜单目录的GameObject gt Vuf
  • 利用docx4j word转pdf

    依赖
  • 不能导入当前目录下的py模块,不能导入自己写的包

    遇到一个很奇怪的问题 在jupyter里面 明明这个包就在当前目录下就是不能倒入 后来 发现os getcwd 返回的也不是当前文件所在目录 真是奇哉怪也 然后我在终端cd进去我要运行代码的目录 然后在 jupoyter notebook
  • 【计算机考研】从二本到浙大

    报名志愿 浙大 计算机科学与技术学院 软件工程专业 初试成绩 分数不高 大佬轻喷 以下学习方法仅供参考 小tip 放在前头 1 不要照搬别人的学习方案 马克思主义要中国化 学习也要个人化 学习是很私人的事情 一定要找到最适合自己的学习作息和
  • 关于IDEA中tomcat启动控制台乱码(server Tomcat Localhost Log Tomcat Catalina Log乱码)问题

    之前在网上查了好多 但好多都是乱改一通 没有实际效果 经过自己的几次试验后 终于找到了原因 希望可以帮助大家解决问题 少走些弯路 具体解释如下 在这之前说下 tomcat安装目录中 conf文件夹中的logging properties文件
  • linux vim配置

    vimrc config vim 配置 没有vimrc就之间创建新的 vi vimrc set nu 设置显示行号 set tabstop 4 shiftwidth 4 softtabstop 4 tab 等于四个空格 set expand
  • org.dom4j.DocumentException: null Nested exception: null解决

    org dom4j DocumentException null Nested exception null at org dom4j io SAXReader read SAXReader java 484 at org dom4j io
  • 【SpringCloud实战开发总结】

    Vue开发总结 1 Vue 开启Watch监听 2 on blur 3 disabled 4 InputNumber标签中的 max和 min 5 Select标签用于模糊查询 6 强制渲染的三种方法 7 增加下拉框宽度 8 vue前端校验
  • DHT11温湿度传感器编程详解

    一 DHT11介绍 DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器 采用专用的数字模块采集技术和温湿度传感技术 无需复杂的电路处理 传感器包括一个电阻式感湿元件和一个NTC测温元件 并与一个高性能8位单片机相连接
  • D3D初学入门一(配置开发环境及绘制D3D窗口)

    最近一直接触的都是C 的东东 好久没写C 代码了 怕手生忘记了 打算写写C 的代码 写什么好呢 想来想去 以前的工作学过接触了些OpenGL 那我就学习一下D3D吧 原以为D3D的中文入门资料会很多的 结果找了半天也没找到合适的 哎 随便将
  • struts2+hibernate+spring配置详解

    struts2 hibernate spring配置详解 struts2 hibernate spring配置详解 哎 当初一个人做好难 现在终于弄好了 希望自学这个的能少走些弯路 以下是自己配置的案例 注意 要想明白的比较好 请下载这个配
  • java字符串是否相等的三种判断方法

    1 比较的是否是同一对象 eg String str1 abc str2 abc if str1 str2 结果为true 因为在java中字符串的值是不可改变的 相同的字符串在内存中只会存 一份 所以a和b指向的是同一个对象 eg Str
  • 14.Netty框架的C#实战使用

    文章目录 博客概述 场景与实现 C 服务器端实现 C 客户端的写法 博客概述 我是java线的工程师 但是技术栈有点全栈的意思 在某次项目中需要用到c 的socket通讯 查询之后惊喜的发现c 也有netty框架 dotnetty gith
  • window10下libpng编译

    系列文章目录 文章目录 系列文章目录 前言 一 问题原因 二 使用步骤 1 引入zlib库 2 configure 3 Grnerate 前言 libpng编译出错 Selecting Windows SDK version 10 0 19
  • Basic Level 1081 检查密码 (15分)

    题目 本题要求你帮助某网站的用户注册模块写一个密码合法性检查的小功能 该网站要求用户设置的密码必须由不少于6个字符组成 并且只能有英文字母 数字和小数点 还必须既有字母也有数字 输入格式 输入第一行给出一个正整数 N 100 随后 N 行
  • Hyper-V虚拟机网络设置

    Hyper V是基于64位系统 在Windows10自带的虚拟化工具 1 Hyper V的启动和管理 控制面板 gt 程序 gt 打开或关闭Windows功能中启用Hyper V 第一次设置后需要重启电脑 2 打开Hyper V管理器 3
  • C语言数据结构循环双链表

    include