摘要:
array数组声明--var arr [10]int,array由[n]<type>定义。n表示数组大小,type表示数组类型声明且初始化--arr := [3]int{1,2,3}或者不写大小var arr := [...]int{1,2,3}或者var arr = [3]int{1,2,3},如果不写大小可以用三个点来表示,go会自动识别,var arr[3]int默认是初始化为0。ps:记住:=和=之间的区别,如果是:=不需要var,如果是=需要var二维数组初始化a := [2][2]int{ [2]int{1,2}, [2]int{3,4} },a := [2][2]in 阅读全文
摘要:
题目:淘宝在全国有很多货物存储仓库,相当于一个环形的链表,每个节点代表一个存货点,现在是每一个存货点存放的货物是不一样的,从而导致了不平衡,要求你给出一个高效算法,用于调节各个存货点的货物保持平衡,限制条件是只能在相邻的点之间传输货物 。求解:这不就是一个负载均衡的问题嘛,关键就是如何选取一个好的负载均衡的算法来实现这个需求。数据结构:双向链表策略:头结点记录所有的存货点的存货量,每隔一周,从头结点出发,单向遍历所有节点,更新头结点的记录所有存货点的存货量的数据。 每一次存货,先看看头结点的记录,往存货量最少的节点上存货。 每一周的更新,不仅仅要更新头结点的记录,同时进行存货点之间的存货平.. 阅读全文