int main() { int a[] = {1,9,3,5,19,38,29,2,4,25,61,-1,7}; LinkList<int>* list = new LinkList<int>(a, 13); list->PrintLinkList(); int listlength = list->ListLength(); std::cout<<"the list length is"<<listlength<<std::endl; int theLastElement = list->Get(13); assert(theLastElement == 7); std::cout<<"the last element value is"<< theLastElement << std::endl; std::cout<<"the values that the array contained currently display"<<std::endl; list->PrintLinkList(); std::cout<<std::endl; std::cout<<"delete the eigth element 2"; std::cout<<std::endl; list->Delete(8); std::cout<<"the values that the array contained currently display"<<std::endl; std::cout<<"the position of 61 is"; std::cout<<std::endl; int position = list->Locate(61); std::cout<<std::endl; std::cout<<position<<std::endl; std::cout<<"the values that the array contained currently display"<<std::endl; list->PrintLinkList(); std::cout<<std::endl; std::cout<<"now we add a value at first position"<<std::endl; list->Insert(1, 11111); std::cout<<"the values that the array contained currently display"<<std::endl; list->PrintLinkList(); std::cout<<std::endl; list->Invert(); std::cout<<"the invert array list is"<<std::endl; list->PrintLinkList(); }
int main() { LinkList<int> ll; cout << "Created a link list..." << endl; cout << "length = " << ll.Count() << endl; for (int i = 1; i <= 10; i++) { int val = i * 2; ll.Insert(val, ll.Count() + 1); cout << val << " inserted. length = " << ll.Count() << endl; } Display(ll); cout << "Reversing ..." << endl; ll.Reverse(); Display(ll); cout << "Reversing again ..." << endl; ll.Reverse(); Display(ll); int idx = 1; int val = ll.Get(idx); cout << "Get(" << idx << ") = " << val << "." << endl; idx = ll.Locate(val); cout << "Locate(" << val << ") = " << idx << "." << endl; if (idx == ll.Locate(val)) { cout << val << " is at " << idx << "." << endl; } idx = 7; val = ll.Get(idx); if (idx == ll.Locate(val)) { cout << val << " is at " << idx << "." << endl; } idx = ll.Count(); val = ll.Get(idx); if (idx == ll.Locate(val)) { cout << val << " is at " << idx << "." << endl; } val = 9999999; if (-1 == ll.Locate(val)) { cout << "Unable to locate " << val << "." << endl; } cout << "Inserting 3 at 3 ..." << endl; ll.Insert(3, 3); Display(ll); cout << "Deleting 3 ..." << endl; ll.Delete(3); Display(ll); cout << "Inserting 0 at 1 ..." << endl; ll.Insert(0, 1); Display(ll); cout << "Deleting 0 ..." << endl; ll.Delete(1); Display(ll); cout << "Inserting 11 at 12 ..." << endl; ll.Insert(11, 11); Display(ll); cout << "Deleting 11 ..." << endl; ll.Delete(11); Display(ll); try { cout << "call LinkList<int> lla = ll ..." << endl; LinkList<int> lla = ll; cout << "lla.length = " << lla.Count() << endl; cout << "call LinkList<int> llb(ll) ..." << endl; LinkList<int> llb(ll); cout << "llb.length = " << llb.Count() << endl; llb.Insert(77, 7); cout << "llb.length = " << llb.Count() << endl; cout << "call llb = lla ..." << endl; llb = lla; cout << "llb.length = " << llb.Count() << endl; cout << "lla.length = " << lla.Count() << endl; cout << "Splitting llb ..." << endl; llb.Insert(88, 8); cout << "llb.length = " << llb.Count() << endl; LinkList<int> llb2 = llb.Split(); Display(llb); Display(llb2); cout << "Splitting ll ..." << endl; LinkList<int> llc = ll.Split(); Display(ll); Display(llc); cout << "Sorting llc ..." << endl; llc.Insert(33, 6); llc.Insert(11, 1); llc.Insert(20, 2); llc.Insert(17, 3); llc.Insert(1, 6); Display(llc); llc.InsertSort(); Display(llc); cout << "Intersecting on llb and llc ..." << endl; Display(llb); Display(llc); LinkList<int> lld = llb.Intersect(llc); Display(lld); cout << "Merging llc into ll ..." << endl; ll.Merge(llc); Display(ll); Display(llc); } catch (const char *&ex) { cout << "Error: " << ex << endl; } cout << "End." << endl; return 0; }