最新消息:

java中如何在LinkedList查找元素

JAVA 大步 1154浏览 0评论

 

我们可以使用LinkedList的indexOf()或者lastIndexOf()方法来查找元素(遇到第一个匹配的元素即停止搜索,同时返回该元素的索引。所以,当LinkedList中有两个同样的元素的时候,使用这两个方法只会返回第一个匹配的元素)。虽然LinkedList不像ArrayList一样支持随机搜索(random search),但是我们仍可以遍历整个线性表,查找需要的元素。

java.util.LinkedList是双向链表的实现,因此有两个可以用来进行查找操作,分别是:

  1. indexOf()表示从线性表的头部开始搜索,当找到第一个匹配的元素后就停止搜索并返回匹配的元素的索引
  2. lastIndexOf()表示从线性表的尾部开始搜索,当找到第一个匹配的元素后就停止搜索并返回匹配的元素的索引。

它们的索引值都是以头部为起点开始计算的,所以对于LinkedList中同一个的元素,使用indexOf()和lastIndexOf()两个方法返回的值是一样的。如果LinkedList中有两个一样的元素,则使用lastIndexOf()和indexOf()返回的结果肯定是不同的。正如前面所说的,LinkedList并不支持随机搜索,要搜索一个元素需要遍历整个List,这意味这查找的时间复杂度(time complexity)是O(n)。

 

下面是LinkedList的结构描述:

linked+list+daa+structure+in+Java

代码实例:

 

原文:《How to search an element inside LinkedList in Java? Example

 

 

 

转载请注明:大步's Blog » java中如何在LinkedList查找元素

SiteMap