Heim  >  Artikel  >  Java  >  So bedienen Sie die Sequenztabelle der Java-Datenstruktur

So bedienen Sie die Sequenztabelle der Java-Datenstruktur

王林
王林nach vorne
2023-05-12 20:22:04824Durchsuche

    Vorwort

    Eine lineare Liste ist eine endliche Folge von n Datenelementen mit denselben Eigenschaften. Lineare Tabellen sind eine in der Praxis weit verbreitete Datenstruktur: sequentielle Listen, verknüpfte Listen, Stapel, Warteschlangen, Zeichenfolgen ... Eine lineare Liste ist logischerweise eine lineare Struktur, dh eine kontinuierliche gerade Linie. Die physische Struktur ist jedoch nicht unbedingt kontinuierlich. Wenn lineare Tabellen physisch gespeichert werden, werden sie normalerweise in Form von Arrays und verknüpften Strukturen gespeichert.

    1. Was ist eine Sequenztabelle?

    Das Konzept und die Struktur einer Sequenztabelle: Eine Sequenztabelle ist eine lineare Struktur, die eine Speichereinheit mit einer kontinuierlichen physischen Adresse verwendet, um Datenelemente der Reihe nach zu speichern verwendet wird. Vervollständigen Sie das Hinzufügen, Löschen, Überprüfen und Ändern von Daten im Array.

    ist eigentlich ein Array. Warum müssen Sie dann eine Sequenztabelle schreiben? Wäre es nicht besser, einfach ein Array zu verwenden? Der Unterschied besteht darin, dass das Schreiben in einer Klasse objektorientiert sein kann.

    Sequenztabelle erstellen

    public class MyArrayList {
       public int[] elem;//数组
       public int usedSize;//数据的有效个数
     
       public MyArrayList(){
           this.elem = new int[10];
       }
    }
    So bedienen Sie die Sequenztabelle der Java-DatenstrukturSequenztabelle drucken

    So bedienen Sie die Sequenztabelle der Java-Datenstruktur Druckergebnis:

    So bedienen Sie die Sequenztabelle der Java-DatenstrukturDa die Anzeige basierend auf usedsize gedruckt wird, wird usedsize kein Wert zugewiesen, sodass nichts gedruckt wird.

    Ermitteln Sie die Länge der Sequenztabelle.

    So bedienen Sie die Sequenztabelle der Java-DatenstrukturFügen Sie ein Element an der Pos-Position hinzu.

    Beim Einfügen eines Elements in die Sequenztabelle muss das Element vor der eingefügten Position gespeichert werden.

    Zeichnungsanalyse:

    So bedienen Sie die Sequenztabelle der Java-Datenstruktur Der Code lautet wie folgt:

    // 在 pos 位置新增元素
        public void add(int pos, int data) {
           if(pos < 0 || pos > usedSize){
               System.out.println("pos位置不合法");
               return;
           }
           if(isFull()){
               this.elem = Arrays.copyOf(this.elem,this.elem.length*2);
           }
            for (int i = this.usedSize-1; i >=pos ; i--) {
                this.elem[i+1] = this.elem[i];
            }
            this.elem[pos] = data;
            
            this.usedSize++;
            
        }
     
        public boolean isFull(){
           return this.usedSize == this.elem.length;
        }

    Druckergebnisse:

    So bedienen Sie die Sequenztabelle der Java-Datenstruktur Bestimmen Sie, ob ein bestimmtes Element enthalten ist.

    // 判定是否包含某个元素
        public boolean contains(int toFind) {
            for (int i = 0; i < this.usedSize; i++) {
                if (this.elem[i] == toFind) {
                    return true;
                }
            }
            return false;
        }

    Druckergebnisse:

    So bedienen Sie die Sequenztabelle der Java-DatenstrukturFinden Sie die Position, die einem Element entspricht rreee

    Drucken Ergebnisse:

    Element an Position Position abrufenSo bedienen Sie die Sequenztabelle der Java-Datenstruktur

     // 查找某个元素对应的位置
        public int search(int toFind) {
            for (int i = 0; i <this.usedSize ; i++) {
                if(this.elem[i] == toFind){
                    return i;
                }
            }
           return -1; 
       }

    Ergebnis drucken:

    Element an Position Position auf Wert setzenSo bedienen Sie die Sequenztabelle der Java-Datenstruktur

     // 获取 pos 位置的元素
        public int getPos(int pos) {
           if(pos < 0 || pos > this.usedSize){
               System.out.println("pos位置不合法");
               return -1;//所以,这里说明一下,业务上的处理,这里不考虑
           }
           if (isEmpty()){
               System.out.println("顺序表为空");
               return -1;
           }
           return this.elem[pos];
     
        }
        public boolean isEmpty(){//判断为不为空的情况下
           return this.usedSize == 0;
        }

    Ergebnis drucken:

    Löschen Sie das Element, das Sie löschen möchten So bedienen Sie die Sequenztabelle der Java-Datenstruktur

       // 给 pos 位置的元素设为 value
        public void setPos(int pos, int value) {
            if (pos < 0 || pos > this.usedSize) {
                System.out.println("pos位置不合法");
                return ;
            }
            if (isEmpty()) {
                System.out.println("顺序表为空");
                return;
            }
             this.elem[pos] = value;
        }
        public boolean isEmpty() {//判断为不为空的情况下
            return this.usedSize == 0;
        }

    Druckergebnis:

    Das obige ist der detaillierte Inhalt vonSo bedienen Sie die Sequenztabelle der Java-Datenstruktur. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Stellungnahme:
    Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen