单链表和顺序表能够处理的问题都差不多,但是链表的优点在于能够节省空间,空间的利用率更高,程序执行的效率更快,链表的基本操作也是面试官喜欢考察的问题之一,链表是一种基本的数据结构,下面主要是利用c++来实现链表的基本功能。//单向链表
#include<assert.h>
typ..
分类:
编程语言 时间:
2016-03-05 14:54:32
阅读次数:
223
package db; public class Queue<E> { /** * 内部类--单链表 * @author fightzhao * * @param <E> */ private static class Node<E> { public Node<E> next; public E
分类:
其他好文 时间:
2016-03-04 20:41:49
阅读次数:
109
我在前面两篇博客《经典算法学习——单链表(不带头结点)实现冒泡排序》《经典算法学习——单链表实现冒泡排序(带头结点)》中详细描述了分别使用带头结点和不带头结点的单链表实现了冒泡排序,让我们对单链表和冒泡排序有了理性的认识。今天我们将会来使用不带头结点的非循环双向链表来实现冒泡排序,在处理过程中,这种冒泡比前面两种更为简单高效。代码上传至 https://github.com/chenyufeng1...
分类:
编程语言 时间:
2016-03-03 21:24:42
阅读次数:
180
/*目的:创建一个单链表,实现尾部插入,头部插入,遍历链表*/#include #include #include //定义一个结构体,用来表示一个节点,包含指针域,数据域struct node{ int data; //数据域 struct node *next; //指针域,...
分类:
其他好文 时间:
2016-01-06 14:08:11
阅读次数:
359
约瑟夫环——围成一圈,定义一个数值K,从任意位置开始计数,每走K步删除当前位置结点,直到剩下最后一个结点,求最后一个结点//单链表结构以及Find函数参见2016-1-213:56发表博客SListNode*Joseph(SListNode*&pos,intK)//约瑟夫环
{
assert(pos);
if(K>0)
{
SListNode*..
分类:
编程语言 时间:
2016-01-05 01:35:22
阅读次数:
386
昨天提到了用线性单链表实现直接插入排序,所以准备借此复习一下线性单链表的内容......(很惭愧,两个学期没再摸数据结构,记不得了) 线性单链表是一种非随机存取的存储结构。因为与顺序表不同的是,链表结构中结点的位置不是连续的,需要通过链表中的结构指针来单向指引(如果是双向链表,则是双向指引。)...
分类:
其他好文 时间:
2015-12-23 19:26:26
阅读次数:
149
#include "stdafx.h"#include "stdio.h"#include #include "string.h" typedef int elemType ; /************************************************************...
分类:
编程语言 时间:
2015-11-11 16:18:30
阅读次数:
276
#include #include typedef int queue_element_t;typedef struct queue_node_s{ queue_element_t element; struct queue_node_s *restp;}queue_node_t;/*Q...
分类:
其他好文 时间:
2015-10-15 18:38:55
阅读次数:
141
#include #include typedef char stack_element_t;typedef struct stack_node_s{ stack_element_t element; struct stack_node_s *restp;}stack_node_t;/*...
分类:
其他好文 时间:
2015-10-15 18:33:46
阅读次数:
241
今天下午编程实现了基数排序(桶排序),只能说一千个人有一千个哈姆雷特,因此,一千个人可能有一千种基数排序的实现方式,无论是用数组,栈,队列,单链表(都是线性表哦, 好巧,哈哈)。重要的是理解该排序算法的思路后,自己也就可以尝试着慢慢写出来了。时间关系,暂且只给出跟人代码(面试黄金月),以后有机会再补...
分类:
编程语言 时间:
2015-09-02 22:06:26
阅读次数:
264