原题地址:http://topic.csdn.net/t/20060904/18/4997991.html
确实很有意思
03. Given an array of size N in which every number between 1 and N, determine if there are any duplicates in it. You are allowed to destroy the array if you like.
译:给你一个长度为N的整数数组,这个数组的元素值都在1到N之间,请判断数组中是否有重复的元素。
思想:一遍扫描数组,遇到ai != i的元素时,将ai换到 数组的ai位置,将那个位置的元素换到与其值相同的位置,直到遇到 i,换成一个有序的数组前缀或遇到重复的元素退出。