void insertion(int *arr, int size) { int i, j; for( i = 0; i < SIZE-1; i++) { for(j = i + 1; j > 0; j--) { if( arr[j] < arr[j-1]){ swapNum(&arr[j], &arr[j-1]); } else { break; } } } }
int firstMissingPositive(vector<int>& nums) { for(int i=0;i<nums.size();i++){ while(nums[i]>0&&nums[i]<nums.size()&&nums[i]!=i+1&&nums[nums[i]-1]!=nums[i]){//交换nums[i]和nums[nums[i]-1]位置上的数据 int pos=nums[i]-1; swapNum(nums,i,pos); } } for(int i=0;i<nums.size();i++){ if(nums[i]!=i+1) return i+1; } return nums.size()+1; }
int main() { int c; int d; int *b; b = a + 81; printf("a,b %d %d\n",a,b); foo(); bar(); swapNum(&a,&b); printf("a b %d,%d \n",a,b); c = 12; d = &c; e = last(a,b,d); printf("e %d\n",e); }