2012-01-26 16 views

答えて

1

はインデックスでのLinkedListに要素を挿入ありがとう本質的に非効率的です。インデックスに挿入する必要がある場合は、LinkedListの代わりにArrayListなどを使用します。

しかし、あなたはListIteratorsの使用に関する情報が必要な場合は、ここを見て:

http://www.java-examples.com/iterate-through-elements-java-linkedlist-using-listiterator-example

さもないと、あなただけの詳細情報については

myLL.add(i,val) 

をやって検討するかもしれないでは、Java APIを参照してください。

http://docs.oracle.com/javase/6/docs/api/java/util/LinkedList.html

+1

、ArrayListのとLinkedListの両方が、この操作に関しては自分の非効率性を持っています。リンクされたリストのO(n)はトラバースされますが、ArrayListの挿入はO(n)です。 – jtahlborn

+0

よろしくお願いします。私はちょうどそれはOPが尋ねたものなので、しかし、挿入については答えていた。 – varatis

+1

ListIteratorを使用する場合、LinkedListに要素を挿入することは効率的ではありません。実際にはO(1)でなければなりません。 –

1

このような何か? (これは、Javaでのブルース・Eckel氏の思考からexcersizeである;?)) effeciencyについての質問がとにかく開いたままに...実際に

public class Excersize14 { 
    public static void main(String[] args) { 
     LinkedList<Integer> list = new LinkedList<Integer>() ; 

      getIterator(list).add(10); 
      getIterator(list).add(20); 
      getIterator(list).add(30); 
      getIterator(list).add(40); 
      getIterator(list).add(50); 
      getIterator(list).add(60); 

      System.out.println(list); 
    } 

    private static ListIterator<Integer> getIterator(LinkedList<Integer> list) { 
      return list.listIterator(list.size()/2); 
    } 
} 
関連する問題