Coursera普林斯顿算法课第二次作业
发布日期:2021-05-15 07:35:18 浏览次数:10 分类:精选文章

本文共 2638 字,大约阅读时间需要 8 分钟。

Deque ������

Deque ��������������������������������������������������������������������������������� LinkedList ��������������������������� O(1) ������������������ enqueue ��� dequeue ���������

������������

public class Deque
implements Iterable
{
private int num;
private Node first, last;
private class Node {
Item item;
Node next;
Node prev;
}
public Deque() {
num = 0;
first = last = null;
}
public boolean isEmpty() {
return first == null;
}
public int size() {
return num;
}
// ������������...
}

������������

  • addFirst: ���������������������������������
  • addLast: ���������������������������������
  • removeFirst: ������������������������������
  • removeLast: ������������������������������
  • iterator: ���������������������������������������������
  • ������

    Deque
    dq = new Deque<>();
    dq.addFirst("I");
    dq.addFirst("am");
    dq.addLast("Gals");
    // ������������...
    for (String s : dq) {
    System.out.println(s);
    }

    ������������������

    RandomizedQueue ��������������������������������������� dequeue ������������������������������������������������

    ������������

    public class RandomizedQueue
    implements Iterable
    {
    private Item[] que;
    private int num;
    public RandomizedQueue() {
    que = (Item[]) new Object[2];
    num = 0;
    }
    // ������������...
    }

    ������������

    • enqueue: ������ resize ���������������������������������������������
    • dequeue: ������������������������������������������������������ loitering���

    ������

    RandomizedQueue
    r = new RandomizedQueue<>();
    // ���������������������������
    while (!StdIn.isEmpty()) {
    String s = StdIn.readString();
    r.enqueue(s);
    }
    int k = Integer.parseInt(args[0]);
    // ��������� k ���������������
    int count = 0;
    for (String ss : r) {
    if (count < k) {
    System.out.println(ss);
    count++;
    } else {
    break;
    }
    }

    ������ demonstrate ������

    Permutation ��������� RandomizedQueue ������������������������������������������������������

    ������������

  • RandomizedQueue ������������������������������������������������
  • enqueue ���������������������������������
  • dequeue ���������������������������������������������������������
  • ������������

    • ������������������ StdIn.readAllStrings���
    • ���������������������������������

    ������

    ������������������������������ Java ������������������������������������������Deque ��� RandomizedQueue ������������������������������������������������ loitering���Permutation ���������������������������������������������������������������

    上一篇:Coursera普林斯顿算法课第三次作业
    下一篇:Coursera普林斯顿大学算法课第一次作业

    发表评论

    最新留言

    网站不错 人气很旺了 加油
    [***.192.178.218]2025年04月22日 06时51分04秒