1. 给定一个带权(非负)有向图,打印输出从节点S到节点T的最短路径(要求打印最短路径长度和具体的路径)
int main() {
Graph<Node> G; // Graph is a class with template
G.build(data.txt); // build the graph
Path<Node> path; //Path is a class with template
path = G.shortest_path(S, T);
cout << path;
return 0;
}
One solution for the exercise is given by Sonia in "C++编程练习3".
2. Given n rectangles, each of them is represented by (length, wide), please order the n rectangles by length using insertion sort algorithm.
class Rectangle {
private:
int length;
int wide;
public:
//...
}
class List {
private:
int count; // the current number of rectangles in the list
Rectangle * head; // the head of the List
public:
//...
}
3. Given n rectangles, each of them is represented by (length, wide), please order the n rectangles by length using insertion sort algorithm.
struct Rectangle {
int length;
int wide;
//...
}
struct List {
int count; // the current number of rectangles in the list
struct Rectangle * head; // the head of the List
//...
}
4. Given 3 rectangles, each of them is represented by (length, wide), please order the n rectangles by length using insertion sort algorithm.
struct Rectangle {
int length;
int wide;
//...
}