伙伴系统 是一种 只 可以 分配 2的 幂次方 个 空间的 ,回收 内存 时 只 合并 “伙伴空间” 的一种 动态内存管理方式。
例如 一个 空间 大小 为 64 的 内存,伙伴 系统 为 这 64 的内存 建立 一组 双向循环 链表,分别 管理着 2的 0 次方,2的1 次方幂,2的 2 次方幂。。。2的6次方幂的 可用空间。
即使 我们 只想分配 一个 大小 为3的 空间,系统 却 只...
分类:
其他好文 时间:
2015-04-17 11:46:08
阅读次数:
151
快慢指针中的快慢指的是移动的步长,即每次向前移动速度的快慢。例如可以让快指针每次沿链表向前移动2,慢指针每次向前移动1次。判断单链表是否为循环链表让快慢指针从链表头开始遍历,快指针向前移动两个位置,慢指针向前移动一个位置;如果快指针到达NULL,说明链表以NULL为结尾,不是循环链表。如果 快指针追...
分类:
其他好文 时间:
2015-04-15 22:46:10
阅读次数:
127
循环链表是另一种形式的链表,他的特点是表中最后一个结点的指针域指向头结点,整个链表形成一个环。由此,从表中任一结点出发均可找到表中其他节点。
循环链表的结构图如下:
循环链表的操作和之前的写过的单链表的操作是基本一致的,所以我就不再给出详细的代码,我来说说它们之间的不同:循环链表与单链表的差别在于算法之中的循环条件不是p或者p->next 是否为空,而变成了它们是否等于头指针。
循环链表...
分类:
其他好文 时间:
2015-04-15 21:35:42
阅读次数:
146
Josephus问题:设有n个人围坐在一个圆桌周围,现从第s个人开始报数,数到第m的人出列,然后从出列的下一个人重新开始报数,数到第m的人又出列。如此反复直到所有的人全部出列为止。 思路:构建一个没有头结点的循环链表,实现自己的删除函数,数到第几个结点就把这个结点从链表中删除,然后重新数。 ...
分类:
其他好文 时间:
2015-04-11 17:31:51
阅读次数:
149
Linux 内核list_head 学习(一)http://www.cnblogs.com/zhuyp1015/archive/2012/06/02/2532240.html在Linux内核中,提供了一个用来创建双向循环链表的结构 list_head。虽然linux内核是用C语言写的,但是list_...
分类:
系统相关 时间:
2015-04-10 11:15:34
阅读次数:
254
题目:
Given a linked list, return the node where the cycle begins. If there is no cycle, return null. 思路分析:
和《Leetcode: Linked List Cycle 》一样还是双指针的方法。一个循环链表如图
slow指针走了S=X+Y
fast指针走了F=X+Y+Z+Y
两个指针相遇。...
分类:
其他好文 时间:
2015-04-05 13:25:38
阅读次数:
216
题目:rotate list
解法1:
/**LeetCode Rotate List:Given a list, rotate the list to the right by k places, where k is non-negative.
* 题目:循环移动链表,等价于将链表从右边数的k个节点移动到表的前方
* 思路:移动倒是简单,重点是要找到链表倒数的k个数,就等价于找到倒数第...
分类:
其他好文 时间:
2015-03-20 14:28:55
阅读次数:
134
题目:http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=3165题意分析:比赛时这题没有A真伤心,错了11遍,最后发现题意少读了一句。We note that E\'s count was irrelevan...
分类:
其他好文 时间:
2015-03-19 16:06:35
阅读次数:
112
void CPage1::RenWuBL(DWORD base){ DWORD pFirstNode=base; wchar_t *name; char * aa=""; _try { DWORD pNextNode = pFirstNode; ...
分类:
其他好文 时间:
2015-03-15 22:59:11
阅读次数:
144
#include #include #define OVERFLOW -2#define OK 1#define ERROR 0//此双向循环链表无头结点typedef int ElemType;typedef struct DulNode { ElemType data; struct DulNo...
分类:
编程语言 时间:
2015-03-15 22:46:08
阅读次数:
166