剑指offer41:和为s的两个数字VS和为s的连续正数序列
来源:互联网 发布:jquery ajax 遍历json 编辑:程序博客网 时间:2024/05/01 09:25
/** * Created by WHZ on 2017/4/7. */public class offer41 { boolean FindNumbersWithSum(int[] data,int length,int sum,int[] num1,int[] num2){ boolean found = false; if(length<1||num1==null||num2==null) return found; int ahead = length-1; int behind = 0; while(ahead>behind){ long curSum = data[ahead]+data[behind]; if(curSum==sum){ num1[0] = data[behind]; num2[0] = data[ahead]; found = true; break; }else if(curSum>sum) ahead--; else behind++; } return found; } void FindContinuousSequence(int sum){ if(sum<3) return; int small = 1; int big = 2; int middle = (1+sum) /2; int curSum = small+big; while(small<middle){ if(curSum==sum) PrintContinuousSequence(small,big); while(curSum>sum&&small<middle) { curSum -=small; small++; if(curSum==sum) PrintContinuousSequence(small,big); } big++; curSum+=big; } } private void PrintContinuousSequence(int small, int big) { for(int i = small;i<=big;i++) System.out.print(i); System.out.println(); }}
0 0
- 剑指offer41:和为s的两个数字VS和为s的连续正数序列
- 剑指offer---和为s的两个数字VS和为s的连续正数序列
- 剑指Offer:和为 S 的两个数字 VS 和为 S 的连续正数序列
- 剑指offer-和为s的两个数字VS和为s的连续正数序列
- 剑指offer 41 - 和为s的两个数字VS为s的连续正数序列
- 【剑指offer之和为s的两个数字VS和为s的连续正数序列】
- 和为S的两个数字 VS 和为S的连续正数序列
- 和为s的两个数字 VS 和为s的连续正数序列
- 41.和为s的两个数字VS和为s的连续正数序列
- 和为s的两个数字VS和为s的连续正数序列
- 和为s的两个数字VS和为s的连续证正数序列
- 和为s的两个数字VS和为s的连续正数序列
- 和为s的两个数字 VS 和为s的连续正数序列42
- Q41:和为s的两个数字VS和为s的连续正数序列
- 和为s的两个数字VS和为s的连续正数序列
- 和为s的两个数字VS和为S的连续正数序列
- 算法题目---和为s的两个数字vs和为s的连续正数序列
- 和为s的两个数字VS和为s的连续正数序列
- 数组和向量类
- laravel文件上传
- 微擎读写分离
- 蓝桥杯 抽签
- laravel文件目录树
- 剑指offer41:和为s的两个数字VS和为s的连续正数序列
- C++作业4实验
- Windows编程实验4
- c++作业3(求任意月有多少天,定期存款利息计算器,多分段函数求值)
- iOS审核被拒,回复中添加附加文件注意事项
- 蓝桥杯 方格填数
- Maven详解之聚合与继承
- 连接数据库的Provider、Driver等字符串的写法
- PHP实现执行定时任务的几种思路详解