假设现在有一个size=10的集合,我们要获取index=5的元素,可以通过:
class Node
{
object item;
Node next;
}
...
for(var i = 0;i<5;i++)
{
node = node.next;
}
node已经成了我们需要的内容。
但是如果size=10000,index=5000。也是通过这么一个循环去遍历吗?
或者说索引器实现的本质是什么呢?
相关问题
- 请教Mysql索引优化问题
- 关于mysql的复合索引的初级问题
- mysql in 和 between索引问题
- for循环输入,中间如果不加输出(什么输出都行),程序错误
- PAT Have Fun with Numbers 有几个测试点过不去
你的这种写法是链表的,,链表查询慢就是这个原因,你可以用数组和集合(用数组实现),直接根据索引获取,查询快
1、可以使用数组保存Node。
2、可以另外使用一个数组,实现index到具体Node的一个映射
“数据结构中如何通过索引值获取索引内容”
===》》》
索引器就是干这个的。
你不想用,那就自己写个方法喽。
===》》》
“或者说索引器实现的本质是什么呢?”
索引器的本质就是一个(或者)两个方法,也可以说索引器就是一个带参数(索引)的属性。
用于:通过指定的索引来从集合中获取特定元素。
安心去遍历把.