c++编程练习2

来源:互联网 发布:origin pro for mac 编辑:程序博客网 时间:2024/04/26 22:00

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;

               //...

     }















原创粉丝点击