定义一个双向链表,并且设计一个函数,查找并且插入元素,保持链表有序排列

问题描述

定义一个双向链表,并且设计一个函数,查找并且插入元素,保持链表有序排列

定义一个双向链表,并且设计一个函数,查找并且插入元素,保持链表有序排列

解决方案

http://www.open-open.com/lib/view/open1410699307711.html

解决方案二:

 STATUS insert_data_into_double_link(DOUBLE_LINK_NODE** ppDLinkNode, int data)
{
    DOUBLE_LINK_NODE* pNode;
    DOUBLE_LINK_NODE* pIndex;
    if(NULL == ppDLinkNode)
        return FALSE;
    if(NULL == *ppDLinkNode){
        pNode = create_double_link_node(data);
        assert(NULL != pNode);
        *ppDLinkNode = pNode;
        (*ppDLinkNode)->prev = (*ppDLinkNode)->next = NULL;
        return TRUE;
    }
    if(NULL != find_data_in_double_link(*ppDLinkNode, data))
        return FALSE;
    pNode = create_double_link_node(data);
    assert(NULL != pNode);
    pIndex = *ppDLinkNode;
    while(NULL != pIndex->next)
        pIndex = pIndex->next;
    pNode->prev = pIndex;
    pNode->next = pIndex->next;
    pIndex->next = pNode;
    return TRUE;
}

具体请参考:c++双向链表操作示例(创建双向链、双向链表中查找数据、插入数据等)

时间: 2024-11-03 03:10:57

定义一个双向链表,并且设计一个函数,查找并且插入元素,保持链表有序排列的相关文章

排序与查找及其应用:设计一个程序,用于查询一个IP所在的机构设计一个程序,用于查询一个IP所在的机构

问题描述 排序与查找及其应用:设计一个程序,用于查询一个IP所在的机构设计一个程序,用于查询一个IP所在的机构 设计一个程序,用于查询一个IP所在的机构.具体要求:1. 设计一个函数,用于比较两个IP地址(字符串)的大小, 2. 从外部数据文件(IP.TXT)中读取IP数据; 3. 用平衡二叉排序树存储IP及其所属机构名称;4. 输入一个IP地址,查找并输出与此IP对应的机构名称; 5. 输入一个机构名称,查询与此机构对应的的IP地址; 解决方案 算法部分可以使用STL. 解决方案二: #inc

qmap-QT Qmap 在一个函数中定义,怎么在另一个函数中遍历

问题描述 QT Qmap 在一个函数中定义,怎么在另一个函数中遍历 50C void address_pool::set_address_pool(QString get_IP){ QString ip; ip= get_IP; qDebug()<<""IP""<<ip; QStringList str=ip.split(""); QStringList strlist= str.at(0).split("&qu

在练习1中你已经定义了一个双向链表,请用它构造一个线索二叉树

问题描述 在练习1中你已经定义了一个双向链表,请用它构造一个线索二叉树 在练习1中你已经定义了一个双向链表,请用它构造一个线索二叉树 解决方案 http://blog.chinaunix.net/uid-26548237-id-3476920.html 解决方案二: 将排序二叉树转换成双向链表 解决方案三: 将一个二叉树转化为双向链表,不开辟新空间

图片-java中定义了一个静态内部类,在主函数中访问此内部类中静态函数时只能通过建立对象调用而不是类名调用

问题描述 java中定义了一个静态内部类,在主函数中访问此内部类中静态函数时只能通过建立对象调用而不是类名调用 图片简略,图片的说明解释了图片大意定义的外部类 外部类中的内部类,包括的静态函数 用类名调用方式调用内部类中静态函数 报错提示如图 用调用非静态函数方法尝试 编译运行成功 如图,为什么定义了一个静态内部类,在主函数中访问此内部类中静态函数时只能通过建立对象调用而不是类名调用,谁能帮忙解答疑惑? 解决方案 你的静态内部类是定义在外部类中的,它可以理解为寄生物,它的宿主是外部类,虽然静态类

从一个失败的强化学习训练说起:OpenAI 探讨应该如何设计奖励函数?

在当下,强化学习算法以一种惊奇.不可思议的方式进入到了我们的视野中.雷锋网(公众号:雷锋网)此前也做过不少相关的覆盖和报道,而在 OpenAI 的这篇文章中,Dario Amodei 与 Jack Clark 将会探讨一个失败的强化学习模型.这个模型为何失败?原因就在于你没有指明你的奖励函数.雷锋网编译,未经许可不得转载. 我们最近在 OpenAI 上使用 Universe 来进行强化学习的实验.Universe是我们使用的一款软件,可以用它来测试和训练AI代理.实验显示,有时候我们在使用强化学

c++-设计一个完整的C++程序

问题描述 设计一个完整的C++程序 设计一个完整的C++程序,把某个班的学生信息保存在磁盘文件中.学生信息包括学号.姓名.电话号码.QQ号.E_mail和家庭地址,以二进制的形式存放到磁盘中.从磁盘中读取出来,并显示在屏幕上,然后输入学生的QQ号,查找是否有该学生信息,有则显示该学生信息,无则显示查找失败. 解决方案 啥意思?命题作文??? 解决方案二: c#我倒是会一点,但是C++写真不会 解决方案三: 定义一个相应的结构体数组,把数据从文件读到数组中,再自定义一个打印函数和查找函数,我记得我

如何设计一个RPC系统

RPC是一种方便的网络通信编程模型,由于和编程语言的高度结合,大大减少了处理网络数据的复杂度,让代码可读性也有可观的提高.但是RPC本身的构成却比较复杂,由于受到编程语言.网络模型.使用习惯的约束,有大量的妥协和取舍之处.本文就是通过分析几种流行的RPC实现案例,提供大家在设计RPC系统时的参考. 由于RPC底层的网络开发一般和具体使用环境有关,而编程实现手段也非常多样化,但不影响使用者,因此本文基本涉及如何实现一个RPC系统. 认识RPC(远程调用) 我们在各种操作系统.编程语言生态圈中,多少

设计一个只能在堆上或栈上实例化的类

一道C++笔试题:设计一个只能在堆内存上实例化的类和一个只能在栈内存上实例化的类 只能在堆内存上实例化的类:将析构函数定义为private,在栈上不能自动调用析构函数,只能手动调用.也可以将构造函数定义为private,但这样需要手动写一个函数实现对象的构造. 只能在栈内存上实例化的类:将函数operator new和operator delete定义为private,这样使用new操作符创建对象时候,无法调用operator new,delete销毁对象也无法调用operator delete

关于如何设计一个基于事件驱动架构的思考

最近一直在思考一个问题:有没有这样一种可能,就是一个领域模型的状态不依赖于外部,它只负责接收外部的事件,然后根据这些事件做出响应:响应分两种: 根据模型当前的内存状态进行业务逻辑处理,然后产生事件,注意:这个过程不会改变模型当前的内存状态: 根据事件改变自己的状态: 另外,也是最重要的,领域模型不用关心自己所产生的事件到底怎么样了,比如不关心有没有持久化,不关心是否和别的事件有并发冲突.它只管根据自己当前的内存状态做上面这两点的响应: 如果这样的设想有可能,那领域模型就是真正的中央业务逻辑处理器