day13

1.剑指 Offer 21. 调整数组顺序使奇数位于偶数前面

复制代码
 1 class Solution {
 2 public:
 3     vector<int> exchange(vector<int>& nums) {
 4       int n = nums.size();
 5       int l = 0,r = n - 1;
 6       while(l < r){
 7           if(nums[l] % 2 == 0 && nums[r] % 2 != 0){
 8               swap(nums[l],nums[r]);
 9               l ++;
10               r --;
11           }
12           if(nums[l] % 2 != 0)
13            l ++;
14           if(nums[r] % 2 == 0)
15            r --;
16       }
17       return nums;
18     }
19 };
复制代码

2.剑指 Offer 57. 和为 s 的两个数字

复制代码
 1 class Solution {
 2 public:
 3     vector<int> twoSum(vector<int>& nums, int target) {
 4       vector<int> res;
 5       int n = nums.size();
 6       int i = 0,j = n - 1;
 7       while(i < j){
 8         if(nums[i] + nums[j] == target)  break;
 9         else if(nums[i] + nums[j] > target) j --;
10         else i ++;
11       }
12       res.push_back(nums[i]);
13       res.push_back(nums[j]);
14       return res;
15     }
16 };
复制代码

还可用二分法

posted @   balabalahhh  阅读(18)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示