-
Notifications
You must be signed in to change notification settings - Fork 0
/
p2pqdriver.cpp
45 lines (41 loc) · 1.17 KB
/
p2pqdriver.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
//
// Created by David Kaauwai on 3/18/2023.
//
#include "LinkedListPQ.h"
#include <iostream>
#include <stdexcept>
// Use iterator to view contents of linked list
template<typename T>
void print(LinkedListPQ<T> pq) {
std::cout << "List-> ";
ListIterator<T> p;
for (p = pq.first(); p != pq.end(); p++) {
std::cout << *p << ' ';
}
std::cout << std::endl;
}
int main() {
LinkedListPQ<int> intpq;
intpq.size();
intpq.isEmpty();
intpq.isFull();
intpq.clear();
intpq.insert(10);
print(intpq);
intpq.peek();
if ( intpq.size() != 1) std::cout << "ERROR: size should be 1\n";
if ( intpq.size() == 1) std::cout << "PASS: size should be 1\n";
if ( intpq.remove() == 10) std::cout << "PASS: removed 10\n";
else std::cout << "ERROR: should have removed 10\n";
printf("insert 20");
intpq.insert(20);
printf("contains 20: %d", intpq.contains(20));
printf("insert 30");
intpq.insert(30);
printf("deleteall 10");
intpq.deleteAll(10);
if ( intpq.remove() == 20) std::cout << "PASS: removed 20\n";
else std::cout << "ERROR: should have removed 20\n";
// Insert more tests here
return 0;
}