网站首页
Veda 原型
互联网资讯
魔法图书馆
晚上八点
订阅
邮件
Veda 原型
成功,唯有积累,没有奇迹
编程语言
PHP服务器脚本
Python程序设计
Java编程语言
C/C++编程语言
前端设计
HTML/HTML 5
CSS层叠样式表
JavaScript
JQuery
Ajax技术
Flex/ActionScript
计算机基础
数据结构
计算机算法
编程思想
面向对象技术
计算机数学与基础
数据之美
数据库技术
Web设计理念
软件架构技术
开源与工具
开源项目与工具
信息安全
搜索引擎优化
网站运维
移动开发
iOS开发
Android开发
程序与生活
IT人家
智力开发
互联网时代
游戏 享受与创造
友情链接
博客导航
专题列表
计算机书籍推荐
关于本站
以图明志
-A wakening of the Trailblazer-
Gundam OO
Unlimited Blade Works
Fate Stay Night
Code Geass
Code Geass
Gundam OOQ Design
Gundam OO
Aeolia Schenberg
Gundam OO
数据结构
[
专题
]
结构之美:定义一个线性表
从最简单的线性表开始讲起
线性表
线性表定义
顺序存储
在 2010年02月01日 那天写的
23,009 views
在计算机中,数据并不是孤立的,而是具有一定内在联系的数据集合,这种联系就是数据结构,说明数据如何被组织在一起的。下面我们从最简单的线性表开始讲起。线性表是最基本、最简单、也是最常用的一种数据结构。线性表中数据元素之间的关系是一对一的关系,即除了第一个和最后一个数据元素之外,其它数据元素都是首尾相接的。
阅读全文 >>
数据结构
[
专题
]
结构之美:线性表的查找、插入与删除操作
顺序存储结构的操作
线性表
插入
删除
在 2010年02月01日 那天写的
18,653 views
查找线性表是最基本的操作之一,比如根据序号查找元素的值,或者根据值查找该值是否在线性表中,如果在,那么序号是几等等。分析上述插入和删除两段代码和更早的获取元素代码,我们可以发现,线性表的顺序存储结构,在存/读数据时,不管是哪个位置,时间复杂度O(1),而插入或删除时,时间复杂度都是O(n)。
阅读全文 >>
数据结构
线性表的概念、结构与基本操作
线性表概览
线性表
线性表结构
在 2010年02月01日 那天写的
10,674 views
什么是线性表?线性表是最基本、最简单、也是最常用的一种数据结构。线性表中数据元素之间的关系是一对一的关系,即除了第一个和最后一个数据元素之外,其它数据元素都是首尾相接的。线性表的逻辑结构简单,便于实现和操作。因此,线性表这种数据结构在实际应用中是广泛采用的一种数据结构。
阅读全文 >>
数据结构
[
专题
]
结构之美:线性表的链式存储结构——链表
链表的详细了解
线性表
链表
链式存储
在 2010年02月02日 那天写的
19,056 views
线性表的链式存储表示的特点是用一组任意的存储单元存储线性表的数据元素(这组存储单元可以是连续的,也可以是不连续的)。因此,为了表示每个数据元素与其直接后继数据元素 之间的逻辑关系,对数据元素来说,除了存储其本身的信息之外,还需存储一个指示其直接后继的信息(即直接后继的存储位置)。由这两部分信息组成一个“结点”,表示线性表中一个数据元素 。
阅读全文 >>
数据结构
线性表的几个链式储存结构介绍
单链表,循环链表与双向链表
链式储存
链表
循环链表
在 2010年02月02日 那天写的
8,599 views
线性表的顺序存储结构要求逻辑关系上相邻的元素在物理位置上也相邻,这样方便了随机存取,但是在插入和删除元素时,需要移动大量元素,而线性表的链式存储则不要求逻辑上相邻的元素在物理位置上也相邻,因此它没有顺序存储结构的可随机存取的优点,不过在插入和删除元素时比较方便。
阅读全文 >>
数据结构
[
专题
]
结构之美:单链表的初始化、创建与遍历
写一个简单的单链表
单链表
初始化
遍历
在 2010年02月02日 那天写的
19,516 views
前面已经对单链表做了一些解释。链表在进行循环遍历时效率不高,但是插入和删除时优势明显。单链表实际上是由节点(Node)组成的,一个链表拥有不定数量的节点。而向外暴露的只有一个头节点(Head),我们对链表的所有操作,都是直接或者间接地通过其头节点来进行的。节点(Node)是由一个需要储存的对象及对下一个节点的引用组成的。
阅读全文 >>
数据结构
[
专题
]
结构之美:单链表的头结点与头指针
理解单链表的两个重要概念
单链表
头结点
头指针
在 2010年02月02日 那天写的
36,152 views
当链表的每个结点只包含一个指针域时,我们称此链表为单链表。关于单链表的存取,有时候我们在单链表的第一个结点(有效元素)之前附设一个结点,称之为头结点;指向头结点的指针,称之为头指针;对单链表的存取必须从头指针开始进行,由于单链表的最后一个数据元素没有直接后继,则指针为NULL。
阅读全文 >>
数据结构
带头结点与不带头结点的单链表初始化
带头结点与不带头结点
头结点
单链表
初始化
在 2010年02月02日 那天写的
24,828 views
不带头结点的单链表对于第一个节点的操作与其他节点不一样,需要特殊处理,这增加了程序的复杂性和出现bug的机会,因此,通常在单链表的开始结点之前附设一个头结点。带头结点的单链表,初始时一定返回的是指向头结点的地址,所以一定要用二维指针,否则将导致内存访问失败或异常。
阅读全文 >>
数据结构
带头结点的单链表的12个基本操作
熟悉带头结点的单链表
单链表
头结点
基本操作
在 2010年02月02日 那天写的
20,714 views
前面说了带头结点与不带头结点这两种单链表的一些情况,同时我们知道设置了头结点的单链表可以降低程序复杂性与减少BUG出现率,那么接下来我们来探讨一下关于带头结点的单链表的一些基本操作,这很重要。线性表的单链表存储结构定义如下:……以下是带有头结点的单链表的12个基本操作:……
阅读全文 >>
数据结构
单链表的基础知识问与答
从问答中理解单链表的特性
单链表
问答
链式存储
在 2010年02月02日 那天写的
5,814 views
简述数据的逻辑结构和存储结构的区别与联系,它们如何影响算法的设计与实现?若用结点表示某个数据元素,则结点与结点之间的逻辑关系就称为数据的逻辑结构。数据在计算机中的存储表示称为数据的存储结构。可见,数据的逻辑结构是反映数据之间的固有关系,而数据的存储结构是数据在计算机中的存储表示。
阅读全文 >>
数据结构
[
专题
]
结构之美:使用头插法创建单链表
单链表整表创建
单链表
创建
头插法
在 2010年02月02日 那天写的
26,782 views
一般有两种常用的方法来建立单链表:头插法与尾插法。头插法从一个空表开始,读取数组a中的字符,生成新结点,将读取的数据存放到新结点的数据域中,然后将新结点插入到当前链表的表头上,直到结束为止。比如学校食堂吃饭排了一大队人,你一上来就插到头一个,那么打饭师傅面对的NEXT就是你了,你的下一个就是原来的队头,队头的上一个就是你。
阅读全文 >>
数据结构
[
专题
]
结构之美:使用尾插法创建单链表
单链表整表创建
单链表
尾插法
创建
在 2010年02月03日 那天写的
29,698 views
头插法建立链表虽然算法简单,但生成的链表中结点的次序和输入的顺序相反。若希望二者次序一致,可采用尾插法建表。该方法是将新结点插入到当前链表的表尾上,为此必须增加一个尾指针real,使其始终指向当前链表的尾结点。尾插法从字面意思可以理解为在表的最后插入结点。从一个空表开始,重复读入数据,生成新结点,将读入数据存放在新结点的数据域中,然后将新结点插入到当前链表的表尾上,直到读入结束标志为止。
阅读全文 >>
数据结构
[
专题
]
结构之美:单链表的销毁删除
将结点循环free掉
单链表
销毁
删除
在 2010年02月03日 那天写的
20,227 views
当我们不再使用某个单链表时,我们就要把它销毁,就是要把它在内存中释放掉。单链表的整表删除,先写一些算法思路:声明一节点p和q;将第一个结点赋值给p;循环,将下一结点赋值给q,释放p,将q赋值给p。实现代码如下:……初始条件:顺序线性表L已存在。操作结果:将L重置为空表。
阅读全文 >>
数据结构
怎样才算是掌握单链表呢?
单链表的一些基本操作与思路
单链表
基本操作
掌握
在 2010年02月03日 那天写的
7,001 views
很多人学习单链表的时候,觉得学得不够深刻,不知道该深入到哪个程度。这里就罗列一下,学了单链表之后至少需要会写的一些对单链表的一些操作。只是简单罗列下,如果你有建议可以补充。首先要声明一个结构体,包含两部分:一是数据域,就是存放数据的。另一个是指针域,指向下一个节点的指针。
阅读全文 >>
数据结构
[
专题
]
结构之美:查找单链表指定位置结点的数据
获取指定结点的数据
单链表
查找
在 2010年02月03日 那天写的
11,739 views
查找单链表上指定节点的数据是单链表的一个基本编程要求。假设我们需要查找第i个节点的值,我们可以声明一个节点p,并且让它指向链表的首元节点,同时开始循环。只要循环数j小于i,就让p指向下一个节点。当j=i时跳出循环,这个时候p就到达了我们需要查找的那个节点,p->data就是我们所需要的结果。
阅读全文 >>
C/C++编程语言
typedef与define在用法上的区别
typedef是为类型取了个“别名”
C语言
typedef
define
在 2010年02月03日 那天写的
7,133 views
简单来讲:#define只是简单的进行了替换,而typedef则是为类型取了个“别名”。 #define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查,不关含义是否正确照样带入,只有在编译已被展开的源程序时才会发现可能的错误并报错。如果你把#define语句中的数字9 写成字母g 预处理也照样带入。
阅读全文 >>
1 / 2
首页
< Prev
1
2
Next >
尾页
页码:
邮件订阅
输入您的邮箱地址,将会收到本站的文章更新信息,赶紧订阅吧。
RSS
Google
鲜果
抓虾
九点
有道
哪吒
QQ邮箱
时不我待
本周热门博文
品读《诫子书》
129 views
更多优秀文章,请移步
精华排行
互联网资讯
陈一舟:创业18年,我领悟的五点心得
384 views
ADS
大音声稀
任何一件事情,只要你认真去做,总是能够变得简单的。
晚八点
新时代严肃阅读指南:文本矩阵简述
662 views
我的微博
ADS
文章分类
专题推荐
其它
捐助本站
计算机书籍推荐
Sponsors
按月归档