代码:
def median(nums):
nums = quicks(nums)
if len(nums) % 2 != 0:
return nums[len(nums) / 2]
else:
return (nums[len(nums) / 2] + nums[len(nums) / 2 - 1]) * 1.0 / 2
def quicksort(nums, left, right):
if left >= right:
return nums
key = nums[right]
idx = left
for i in range(left, right):
if nums[i] < key:
nums[idx], nums[i] = nums[i], nums[idx]
idx += 1
nums[idx], nums[right] = nums[right], nums[idx]
nums = quicksort(nums, left, idx - 1)
nums = quicksort(nums, idx + 1, right)
return nums
def quicks(nums):
nums = quicksort(nums, 0, len(nums) - 1)
return nums
num = [4, 6, 8, 7, 7, 6]
num = quicksort(num, 0, len(num) - 1)
print num
print median(num)
运行结果: