1.多岔路口的交通灯管理(通行能力最大化)。
2.算法解决的是一类问题。
3.DS是一个二元组,包含数据元素的集合和定义在数据元素关系上的集合。
4.根据斯特林公式n!约等于(n/e)^n。
5.指数级算法如2^n,n在小于20时还可以用。
6.
1 package a; 2 3 //顺序表的合并,复杂度len1 + len2 4 public class Union { 5 public static void main(String[] args) { 6 int[] a = {1,4,56,79}; 7 int[] b = {3,8,24,35,79,100,200,300}; 8 int[] c = new int[110]; 9 int len = doUnion(a,b,c); 10 11 for(int i=0; i<len; i++) { 12 System.out.println(c[i]); 13 } 14 15 } 16 17 private static int doUnion(int[] a, int[] b, int[] c) { 18 int i,j,k; 19 int len1 = a.length; 20 int len2 = b.length; 21 i = 0;//c的长度 22 j=0; 23 k=0; 24 25 while(k<len2&&j<len1) { 26 if(a[j]<b[k]) { 27 c[i++] = a[j]; 28 j++; 29 }else if(a[j]>b[k]) { 30 c[i++] = b[k]; 31 k++; 32 }else { //相同元素只并入一个 33 c[i++] = a[j]; 34 j++; 35 k++; 36 } 37 } 38 39 for(int t=j; t<len1; t++) { 40 c[i++] = a[t]; 41 } 42 43 for(int t=k; t<len2; t++) { 44 c[i++] = b[t]; 45 } 46 return i; 47 } 48 49 }
7.