码迷,mamicode.com
首页 >  
搜索关键字:头结点    ( 1033个结果
双向链表的初始化,建立,添加节点和删除节点(注意插入和删除要分三种情况)
/*双向循环链表*/ #include "declaration.h" typedef struct DulNode { int data; struct DulNode *next,*prior; }DulNode,*DulLinkList; Status InitList_DUL(DulLinkList &L)//初始化一个带头结点的双向循环链表,ok { L=(DulNode...
分类:其他好文   时间:2014-12-25 20:37:04    阅读次数:221
改进hash遍历
STL中实现的hash_map和MFC中实现的CMap数据结构均为hash。普通的hash在遍历时,效率会比较慢。hash_map与CMap的遍历均顺序访问每一个桶,因此会在空桶上浪费一定的时间。 1. 改进的hash 哈希结点结构如图1-1(a)所示,其中data为存储的数据,next为指向下一个哈希结点的指针。哈希头结点如图1-1(b)所示,其中preBucket为前一个有数据的桶号,ne...
分类:其他好文   时间:2014-12-25 16:28:29    阅读次数:157
c-连接两个链表
概述 还是相对简单,不过要记得释放不用的头结点即可.代码为: 1 //将lList2头结点连接在lList1尾结点的后面. 2 void 3 combine(linklist lList1, linklist lList2) { 4 Linknode *lst01Tail = lList1...
分类:其他好文   时间:2014-12-19 11:35:54    阅读次数:164
数据结构与算法-学习笔记6
单链表的整表创建、删除单链表的整表创建思路:-声明一个结点p和计数器变量i-初始化一个空链表L-让L的头结点的指针指向NULL,即建立一个带头结点的单链表;-循环实现赋值和插入头插法建表从一个空表开始,生成新结点,读取数据存放到新节点的数据域中,然后将新节点插入到当前..
分类:编程语言   时间:2014-12-17 19:05:10    阅读次数:231
C++ 算法之 是否为环形链表
如果有两个头结点指针,一个走的快,一个走的慢,那么若干步以后,快的指针总会超过慢的指针一圈。   bool IsCycleList(ListNode* pHead) { if(pHead== NULL) return false; if (pHead->m_pNext == NULL) { return false; } ListNode* pFastNod...
分类:编程语言   时间:2014-12-16 17:13:12    阅读次数:154
C++算法之 是否是环形链表
如果有两个头结点指针,一个走的快,一个走的慢,那么若干步以后,快的指针总会超过慢的指针一圈。bool IsCycleList(ListNode* pHead){ if(pHead== NULL) return false; if (pHead->m_pNext == NULL) { retur...
分类:编程语言   时间:2014-12-16 13:16:36    阅读次数:143
C++算法之 倒序输出一个链表
题目:给定一个头结点,倒叙输出一个链表   解法1:先将链表反转,在遍历输出 解法2:不修改链表自身的结构,动态申请一段空间,申请一个指针数组,数组内存放的指针指向链表的每个值,再遍历数组输出: void PrintListBack(ListNode* head) { int n = GetLength(head); ListNode** p = new ListNode*[n+...
分类:编程语言   时间:2014-12-12 16:48:03    阅读次数:203
C++算法之 反转单链表
题目:定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点,链表节点定义为: struct ListNode {      int    m_nValue;     ListNode* m_pNext; }; 算法思路: 链表  1-->2-->3-->4-->5 建立一个 pPrev节点,而且为空节点;  pPrev = NULL;再建立一个节点pNode = ...
分类:编程语言   时间:2014-12-12 15:00:59    阅读次数:163
一步一步写算法(之排序二叉树插入)
原文: 一步一步写算法(之排序二叉树插入) 【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 二叉树的节点插入比较简单。一般来说,二叉树的插入主要分为以下两个步骤: 1) 对当前的参数进行判断,因为需要考虑到头结点,所以我们使用了指针的指针作为函...
分类:编程语言   时间:2014-12-11 10:17:36    阅读次数:192
数据结构实验之链表三:链表的逆置
数据结构实验之链表三:链表的逆置 Time Limit: 1000MS Memory limit: 65536K 题目描述 输入多个整数,以-1作为结束标志,顺序建立一个带头结点的单链表,之后对该单链表的数据进行逆置,并输出逆置后的单链表数据。 输入 输入多个整数,以-1作为结束标志。 输出 输出逆置后的单链表数据。 示例输入 12 56 4 6 55 1...
分类:其他好文   时间:2014-12-11 06:49:08    阅读次数:203
1033条   上一页 1 ... 92 93 94 95 96 ... 104 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!