以图明志

数据结构

[专题] 链栈的初始化与遍历

链栈的基本操作
我们在定义完一个数据结构的结构体之后,需要初始化才能使用。比如顺序栈的初始化,也就是构造一个空栈就行了。那么链栈如何初始化呢?链栈初始化的目标也是要构造一个空栈。根据结构体定义,空栈是什么一个状况呢?就是栈的count = 0,并且栈的 top 为 null。所以知道这两点,我们就可以写出链栈的初始化函数了。

数据结构

[专题] 删除单链表中的重复元素

遍历与比较
刚我在网上看到一个面试题,如何删除单链表中重复的元素。今天我们试着解决这个问题吧。建立三个工作指针p,q,r,然后p遍历全表。p每到一个结点,q就从这个结点往后遍历,并与p的数值比较,相同的话就free掉那个结点。思路也蛮简单的。

PHP服务器脚本

[专题] 看看PHP迭代器的内部执行过程

实现一个自定义的迭代器
下面我们来了解如何实现一个自定义的迭代器,然后再开始慢慢理解迭代器的内部工作原理。一般的迭代器内部需要下面的方法:Return the current element 返回当前元素,Return the key of the current element 返回当前元素的键……如果不是很清楚迭代器的内容工作流程,可以查看下面的迭代器对数组的遍历过程。

PHP服务器脚本

递归遍历PHP多维数组

二维及多维数组的遍历
数组的遍历是PHP一个常见的编程任务,而数组又分为一维数组、二维数组和多维数组。一维数组的遍历很简单,直接一个for循环就可以完成。那么二维数组和多维数组的遍历又应该如何实现呢?请看以下程序……

JavaScript

JavaScript数组遍历map()的原型扩展

超级实用函数map
在 JavaScript 1.6 里,javascript 数组增加了几个非常有用的方法:indexOf、lastIndexOf、every、 filter、 forEach、 map、 some,其中前两个可以归为元素定位方法,而后面的几个则可以归为迭代(iterative)方法。遗憾的是:这些新方法并非所有浏览器都支持,在这种情况下,我们就需要自己动手了。

PHP服务器脚本

PHP遍历关联数组的几种方法

整理下更好地记忆
在PHP中数组分为两类: 数字索引数组和关联数组。其中数字索引数组和C语言中的数组一样,下标是为0,1,2…而关联数组下标可能是任意类型,与其它语言中的hash,map等结构相似。 下面介绍PHP中遍历关联数组的三种方法。foreach、each和list & each。

数据结构

遍历一维数组的效率问题

探讨高效的遍历方法
下面的程序,输入学生的成绩查询其学号。首先将输入的数字与数组的各元素匹配,若匹配的话,该数组元素的索引就是该学生的学号。然后就可以将这个数组元素输出。很明显,最坏的情况,什么也查不到,但整个数组遍历了。

数据结构

如何用一维数组模拟二维数组

以二维数组的遍历方式遍历一维数组
以二维数组的遍历方式遍历一维数组。下面是5*6的表格数据,用一维数组存储。遍历,还是二维数组的遍历方式。第一个循环是行的循环,第二个是列的循环。

PHP服务器脚本

PHP遍历某文件夹下的文件与文件夹名

PHP读取子文件夹名称
opendir() 函数打开一个目录句柄,可由 closedir(),readdir() 和 rewinddir() 使用。若成功,则该函数返回一个目录流,否则返回 false 以及一个 error。可以通过在函数名前加上 "@" 来隐藏 error 的输出。语法为 opendir(path,context)。

JavaScript

JavaScript对象的访问与遍历

JavaScript语言是基于对象的
JavaScript语言是基于对象的(Object-Based)、而不是面向对象的(object-oriented)语言。之所以说它是一种基于对象的语言,主要是因为它没有提供像抽象、继承、重载等有关面向对象语言的许多功能,而是把其他语言所创建的复杂对象统一起来,从而形成一个非常强大的对象系统。虽然Javascript语言是一种基于对象的语言,但它还具有一些面向对象语言的基本特征。

PHP服务器脚本

PHP用foreach遍历数组比较高效

多用foreach来操作数组
这里的array_name是你要遍历的数组名,每次循环中,array_name数组的当前元素的值被赋给$value,并且数组内部的下标向下移一 步,也就是下次循环回得到下一个元素。跟第一种方法的区别就是多了个$key,也就是除了把当前元素的值赋给$value外,当前元素的键值也会在每次循环中被赋给变量$key。键值可以 是下标值,也可以是字符串。

数据结构

[专题] 结构之美:单链表的初始化、创建与遍历

写一个简单的单链表
前面已经对单链表做了一些解释。链表在进行循环遍历时效率不高,但是插入和删除时优势明显。单链表实际上是由节点(Node)组成的,一个链表拥有不定数量的节点。而向外暴露的只有一个头节点(Head),我们对链表的所有操作,都是直接或者间接地通过其头节点来进行的。节点(Node)是由一个需要储存的对象及对下一个节点的引用组成的。
1 / 1 首页 < Prev 1 Next > 尾页 页码: