1.有四个人ABCD四个人在夜里过桥,只有一个手电,桥比较窄,一次最多只能过两个人,他们过桥所花的时间分别是1 2 5 10分钟,怎样过桥,总时间最短(两个人过桥的时间以最慢的那个人的时间计算)
2.有一条不均匀的绳子,从一端烧到另一端共需1小时,那么给你两条这样的绳子,如何测量30min?45min?
3.两个人下了五盘棋,都已经下好了,而且没有平局,那么为什么他们各自赢的盘数和输的盘数都一样
4.定义一个宏swap(x,y),实现互换
5.双向列表排序(递增)
函数:ListItem* ( ListItem* pInput )
6.指出以下语句中的heap,stack,global data segment   int i;
   void f( char c1, char *p )
   {
    char *c;
    c = malloc ( 20 )
    //other code
   }

解决方案 »

  1.   

    2;A绳子点燃两头同时B绳子点燃一头,A绳子然完时是30MIN,此时点燃B绳子另外一头,B绳子然完是45MIN.
      

  2.   

    6.指出以下语句中的heap,stack,global data segment
       int i;
       void f( char c1, char *p )
       {
        char *c;
        c = malloc ( 20 )
        //other code
       }
    heap: c
    stack: c1, p
    global data segment: i 
      

  3.   

    A嬴的和B输的一样。B嬴的和A输的一样。
      

  4.   

    6.指出以下语句中的heap,stack,global data segment
       int i;
       void f( char c1, char *p )
       {
        char *c;
        c = malloc ( 20 )
        //other code
       }
    heap: c        ------------------〉c应该在stack中才对,这样写会造成内存泄漏
    stack: c1, p
    global data segment: i
      

  5.   

    有没人可以解释一下heap,stack,global data segment