20210111リンクリスト


ログ#ログ#
野心的にあちこち探して、薄情にコードして、
出力は私の予想とは違います.脳が止まった.
どこから間違えたのか、明日にします.^^

背景知識

  • リンクリストりんくりすと:シングル、ダブル、ループ
    データを格納する各ノードの前後アドレス.
  • 資料構造とは何ですか。
    データ構造の最大の目的は、メモリの使用率を向上させることです.各アドレスにアクセスする速度が同じなので、検索するデータのアドレスを知るだけで、データをすばやく取得できます.これらのRAM特性を十分に活用することが重要である.
  • ビオ記号説明ビデオ
  • 学習目標


    ビデオ情報を格納するデータ構造を宣言し、データインスタンスを生成します.
    リンクリスト構造(Linked List)を実現するために、データ構造は以下のビデオ情報マニュアルを参照することができる必要がある.
    ArrayやListを使わず、データ構造をそのまま使うだけで実現できます.
    映像データ構造
    ビデオ情報を表すデータ構造は以下の要件を満たす.

    インプリメンテーションコード

    
    import java.util.Random;
    public class VideoData { // VideoData 라는 클래스 하나를 선언합니다.
    
        String Id; // 고유한 id값
        int SubjectNumber = 0; // SubjectNumber 안에 간단한 정수값 데이터를 선언합니다.
        int[] OneToFifteen = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};
        int RunTime;
        VideoData next = null; // 노드의 다음값을 null로 선언합니다.
        VideoData(String name){// 값을 하나 받아서 생성자를 생성하나를 만듭니다.
            this.Id= name ; //이 데이타에 넣어줍니다.
        }
    
        void AddVideo(String name) {// 값을 하나 받아서 생성자를 생성하
            this.SubjectNumber++; // 제목은 +1
            this.RunTime = new Random().nextInt(OneToFifteen.length); // 1~15중에 랜덤을 하나 뽑기
            VideoData end = new VideoData(Id);
            VideoData n = this;
            while (n.next != null) {
                n = n.next;
            }
            n.next = end;
            System.out.println("제목" + this.SubjectNumber + "(" + this.Id + ")" + ":" + this.RunTime);
    
        }
    

    テスト

    
    public class Main {
        public static void main(String[] arg) {
            VideoData Start = new VideoData("abcd");
            Start.AddVideo("afbc");
            Start.AddVideo("bdfa");
            Start.AddVideo("afaf");
            Start.AddVideo("abab");
            Start.AddVideo("acac");
            Start.AddVideo("bdbd");
            Start.AddVideo("baaa");
            Start.AddVideo("cafe");
            Start.AddVideo("ccef");
            Start.AddVideo("afcd");
            Start.AddVideo("fabc");
            Start.AddVideo("dcba");
        }
    }

    しゅつりょく

    출력값
    제목1(abcd):2
    제목2(abcd):8
    제목3(abcd):11
    제목4(abcd):1
    제목5(abcd):2
    제목6(abcd):0
    제목7(abcd):10
    제목8(abcd):13
    제목9(abcd):3
    제목10(abcd):12
    제목11(abcd):3
    제목12(abcd):4