问题 圆排列问题:给定n个圆的半径序列,将它们放到矩形框中,各圆与矩形底边相切,求具有最小排列长度的圆排列。 解析 对于给定的n个圆,设计一个优先队列式分支限界法,计算n个圆的最佳排序方案,使其长度达到最小。按照回溯法搜索排列树的算法框架,设开始时 a = [r1, r2, …, rn] 是所给的 n 个圆的半径,则相应的排列树由a[1, …, n] 的所有排列构成。 设计 //核心代码 void backtrack(int t) { if(t==N) { compute(