首页 > 代码库 > 剑指Offer39 数组中寻找和为sum的两个数字
剑指Offer39 数组中寻找和为sum的两个数字
1 /************************************************************************* 2 > File Name: 39_TwoNumbersWithSum.cpp 3 > Author: Juntaran 4 > Mail: JuntaranMail@gmail.com 5 > Created Time: 2016年09月03日 星期六 11时14分49秒 6 ************************************************************************/ 7 8 #include <stdio.h> 9 10 bool FindNumberWithSum(int* nums, int length, int sum, int* num1, int* num2)11 {12 bool ret = false;13 if (length<1 || num1==NULL || num2==NULL)14 return ret;15 16 int left = 0;17 int right = length - 1;18 19 while (right > left)20 {21 int current = nums[left] + nums[right];22 if (current == sum)23 {24 *num1 = nums[left];25 *num2 = nums[right];26 ret = true;27 return ret;28 }29 else if (current > sum)30 right --;31 else32 left ++;33 }34 return ret;35 }36 37 int main()38 {39 int nums[] = {1,2,4,7,11,15};40 int length = 6;41 int sum = 15;42 int num1, num2;43 44 if (FindNumberWithSum(nums, length, sum, &num1, &num2))45 printf("%d, %d\n", num1, num2);46 else47 printf("Not Find\n");48 return 0;49 }
剑指Offer39 数组中寻找和为sum的两个数字
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。