leetcode Two Sum
leetcode
1.Two Sum
Given an array of integers, returnindicesof the two numbers such that they add up to a specific target.
You may assume that each input would haveexactlyone solution.
Example:
Givennums=[2,7,11,15],target=9,Becausenums[0]+nums[1]=2+7=9,return[0,1].
UPDATE (2016/2/13):
The return format had been changed tozero-basedindices. Please read the above updated description carefully.
#include<stdio.h>#include<stdlib.h>int*twoS(int*nums,intnumsize,inttarget){inti=0;intj=numsize-1;intsum;int*res=(int*)malloc(2*sizeof(int));if(nums==NULL){returnNULL;}while(i<j){if(target==nums[i]+nums[j]){res[0]=nums[i];res[1]=nums[j];returnres;}elseif(target>nums[i]+nums[j]){i++;}else{j--;}}returnNULL;}intmain(){inta[]={2,3,7,11,15};//printf("%d\n",sizeof(a));int*p;p=twoS(a,4,9);if(p!=NULL){printf("%d....%d",p[0],p[1]);}else{printf("NULLLLL");}free(p);return0;}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。