问题1:机器物品平均问题这道题使用贪心算法。计算出数组位置的平均值。对于每一个位置,可以分别计算出左部分和右部分缺少或多出的数量,不同情况需要移动的最大次数如上图所示。例如对于数组[100,0,0,0],对于位置0的100,右部分的值为-75,需要往右侧移动75件物品;对于位置1的0,左部分的值为+75,右部分的值为-50,需要往右侧移动75件物品;对于位置2的0,左部分的值为+50,右部分的值为-25,需要往右侧移动50件物品;对于位置3的0,左部分的值为+25,需要往右侧移动25件物品。所以最多需要进过最大值75。问题2:螺旋打印矩阵问题思路,给定一个框的左上角和右下角,只需要按顺时针打印这个框即可。然后框的左上角向右下角移动,框的右下角上向左上角移动,得到一个新的框。下一轮新框是一个竖线,则停止。扩展:思路:把正方形看成以中心点的多个框组成。只要写出框的旋转方法即可。已知框的四个角的点。将一个框分为四组,交换旋转90度后组中元素的对应位置。问题3:zigzag打印数组A点一直往右移动,移动到右侧没有点时往下移动;B点一直往下移动,移动到下方没有点时往右移动,每次只移动一个点。