CS61b lab4打卡

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CS61b lab4打卡相关的知识,希望对你有一定的参考价值。

DnodeList1:构造DoubleList

insert及remove的代码:

 public void insertFront(int i) {
          if(size==0){
              head=new DListNode1(i);
              tail=head;
              size=1;
          }
          else if(size==1){
              head=new DListNode1(i);
              head.next=tail;
              tail.prev=head;
              size=2;
          }
          else{
          DListNode1 node=new DListNode1(i);
          node.next=head;
          head.prev=node;
          head=node;
          size++;
          }
      }
  public void removeFront() {
        if(size==0)
            return;
        else{
            head=head.next;
            size--;
        }
      }

运行结果:技术分享

DNodeList2: 构造circularList,这个在lab3中写过,重写一遍就当复习了吧:

 public void insertFront(int i) {
          DListNode2 node=new DListNode2(i);
          node.next=head.next;
          node.prev=head;
          head.next=node;
          if(size==0)
              head.prev=node;
          size++;
      }
public void removeFront() {
        if(size==0)
            return;
        else if(size==1){
            head.next=head;
            head.prev=head;
            size=0;
            }
        else{
            head.next.next.prev=head;
            head.next=head.next.next;
            size--;
        }
      }

运行结果:技术分享

以上是关于CS61b lab4打卡的主要内容,如果未能解决你的问题,请参考以下文章

cs61b homework4

cs61b homework7

lab4打卡

CS61b homework1

CS 61B Lab5

CS61B LAB1