|
|
1.1 ! root 1: // list test program. Sorts standard input, prints with counts ! 2: ! 3: #include "pair_list.h" ! 4: ! 5: listoutimplement(pair) ! 6: ! 7: pair_list ! 8: sort(pair_list aList) // straight insertion ! 9: { ! 10: pair_list_iterator unsorted(aList); ! 11: if ( unsorted.next() ) { ! 12: pair p; ! 13: while ( unsorted.r_removeX(p) ) { ! 14: pair_list_iterator sorted = unsorted; ! 15: pair *q; // pointer into sorted part ! 16: while ( sorted.r_nextX(q) && q->name > p.name ) ! 17: ; ! 18: if ( q->name < p.name ) ! 19: sorted.next(); // back up ! 20: else if ( q->name == p.name ) { ! 21: q->count++; ! 22: continue; ! 23: } ! 24: sorted.r_insert(p); ! 25: } ! 26: } ! 27: return aList; ! 28: } ! 29: main() ! 30: { ! 31: String s; ! 32: pair_list myList; ! 33: while (cin >> s) ! 34: myList.put(pair(s)); ! 35: myOut(cout, sort(myList)); ! 36: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.