小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

多種數(shù)據(jù)結(jié)構(gòu)的Java實(shí)現(xiàn)

 moonboat 2009-02-11

多種數(shù)據(jù)結(jié)構(gòu)的Java實(shí)現(xiàn)

class Node {
  Object item; Node next;
    Node (Object v) {
     item = v; next = null;
  }
}

頭指針,空尾指針
初始化:head = null;
在x后插入t:
if ( x == null)
{ head = t; head.next = null; }
else { t.next = x.next; x.next = t; }
移走x之后的結(jié)點(diǎn):t = x.next; x.next = t.next;
循環(huán)遍歷:for ( t = head; t != null; t = t.next )

檢查鏈表是否為空:if ( head == null )
空頭結(jié)點(diǎn),空尾指針
初始化:head = new Node(); head.next = null;
在x后插入t:t.next = x.next; x.next = t;
移走x之后的結(jié)點(diǎn):t = x.next; x.next = t.next;
循環(huán)遍歷:for ( t = head.next; t != null; t = t.next )
檢查鏈表是否為空:if ( head.next == null )
空頭結(jié)點(diǎn),空尾結(jié)點(diǎn)
初始化:head = new Node(); z = new Node(); head.next = z; z.next = z;
在x后插入t:t.next = x.next; x.next = t;
移走x之后的結(jié)點(diǎn):t = x.next; x.next = t.next;
循環(huán)遍歷:for ( t = head.next; t != z; t = t.next )
檢查鏈表是否為空:if ( head.next == z )
循環(huán)鏈表
第一次插入:head.next = head;
在x后插入t:t.next = x.next; x.next = t;
移走x之后的結(jié)點(diǎn):t = x.next; x.next = t.next;
循環(huán)遍歷:t = head; do { t = t.next; } while ( t != head );
檢查是否只有一個(gè)數(shù)據(jù)項(xiàng):if ( head.next == head )

堆棧

數(shù)組實(shí)現(xiàn)
class Stack {
  private Object[] s;
  private int n;
  Stack ( int maxN ) {
    s = new Object[maxN]; n = 0;
  }
  boolean isEmpty() { return ( n == 0 ); }
  void push ( Object item ) { s[n++] = item; }
  Object pop() {
    Object t = s[--n]; s[n] = null; return t;
  }
}


鏈表實(shí)現(xiàn)
class Stack {
  private Node head;
  private class Node {
    Object item; Node next;
    Node ( Object item, Node next ) {
      this.item = item; this.next = next;
    }
  }
  Stack ( Object maxN ) { head = null; }
  boolean isEmpty() { return ( head ==null ); }
  void push ( Object item ) { head = new Node(item, head); }
  Object pop() {
    Object v = head.item;
    Node t = head.next;
    head = t;
    return v;
  }
}

FIFO隊(duì)列的鏈表實(shí)現(xiàn)
class Queue {
  private class Node {
    Object item; Node next;
    Node ( Object item ) {
      this.item = item; this.next = null;
    }
  }
  Private Node head, tail;
  Queue ( Object max ) { head = null; tail = null; }
  boolean isEmpty() { return ( head ==null ); }
  void put ( Object item ) {
    Node t = tail;
    tail = new Node(item);
    if ( empty() )
      head = tail;
    else t.next = tail
  }
  Object get() {
    Object v = head.item;
    Node t = head.next;
    head = t;
    return v;
  }
}

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多