<>();for(int i=0; i>remove(Map> rowDataMap, List paintPoint) {if(paintPoint.size()>0){for(int i=0; i paintPoint, Map> rowDataMap) {int key = pm.getKey();//获取key的所有相邻节点Set set = rowDataMap.get(key);for(int i=0; i> rowDataMap){Set U =rowDataMap.keySet();Iterator iter = U.iterator();int index = 0;PointModel[] pms = new PointModel[rowDataMap.size()];while(iter.hasNext()){Integer key = iter.next();Set values = rowDataMap.get(key);PointModel pm = new PointModel();pm.setKey(key);pm.setPointSize(values.size());pms[index] = pm;index = index + 1;}System.out.println(JSON.toJSONString(pms));quick_sort(pms, 0, pms.length-1);//PointModel[] result = new PointModel[pms.length];//int k = 0;//for(int i= pms.length; i > 0; i--){//result[k] = pms[i-1];//k = k + 1;//}return pms;}//快速排序private void quick_sort(PointModel[] pms , int l, int r){if (l < r){//Swap(s[l], s[(l + r) / 2]); //将中间的这个数和第一个数交换 参见注1int i = l, j = r;PointModelx = pms[l];while (i < j){while(i < jif(i < j) {pms[i++] = pms[j];}while(i < jif(i < j) {pms[j--] = pms[i];}}pms[i] = x;quick_sort(pms, l, i - 1); // 递归调用quick_sort(pms, i + 1, r);}}/*** TODO 找出未上色的点里面 , 相邻点最多的 。 本方法可以修改 , 也可以不用本方法 。*/private void findNextPointToPaint() {}}复制代码相关代码已上传 , 如需下载如查看
【撬动offer:图的着色问题】作者:挨呀小黄链接:来源:掘金著作权归作者所有 。 商业转载请联系作者获得授权 , 非商业转载请注明出处 。