public static void adjustHeap(int[] heap, int location, int unSortlength) {
		int temp;
		int tempLoc;
		if ((tempLoc = (location + 1) * 2) < unSortlength) { //如果左右节点存在
			if (heap[tempLoc] >= heap[tempLoc - 1]) { //判断左右节点大小
				if (heap[location] < heap[tempLoc]) { //判断父节点与子节点的大小，若父节点小，则与大的子节点换位
					temp = heap[location];
					heap[location] = heap[tempLoc];
					heap[tempLoc] = temp;
					adjustHeap(heap, tempLoc, unSortlength); //递归法对换位后的子节点及其子节点进行调整
				}
			} else {
				if (heap[location] < heap[tempLoc - 1]) { //左节点大于右节点
					temp = heap[location];
					heap[location] = heap[tempLoc - 1];
					heap[tempLoc - 1] = temp;
					adjustHeap(heap, tempLoc - 1, unSortlength); //递归法对换位后的子节点及其子节点进行调整
				}
			}
		} else if ((tempLoc = (location + 1) * 2 - 1) < unSortlength) { //如果左节点存在
			if (heap[location] < heap[tempLoc]) { //与左节点进行比较
				temp = heap[location]; //左子节点大于父节点，将两者进行换位
				heap[location] = heap[tempLoc];
				heap[tempLoc] = temp;
				adjustHeap(heap, tempLoc, unSortlength);
			}
		}
	}