1, n个整数已经存放在数组A中,编写一个递归算法,输出从这n个数中取出所有k
   (k<=n)个数的组合,比如: 若A中存放的数是1,2,3,4,5, k为3, 则输出结果是
   543,542,541,532,521,432,431,421,321.
2, 无环连通图T=(V,E)的直径是树中所有点对间最短路径长度的最大值,即T的直径
   定义为MAX D(u,v)表示顶点u到顶点v的最短路径长度(路径长度为路径中所包含的
   边数).写一算法求T的直径,并分析算法的时间复杂度.
   我设计的算法思想是对图中每一个点都进行广度遍历以求得最短路径的长度的最大
   值,然后再比较每一个顶点的值,取最大的那个.这样时间复杂度比较高.
   我的问题是,还有没有比较更好的算法降低时间复杂度呢?
  
   谢谢!