class Solution {
public int[] exchange(int[] nums){
int left =0;
int right = nums.length -1 ;
boolean cur =true;
while( left < right){
if(cur){
if((nums[left] % 2)!=0){
left++;}else{
int tmp = nums[left];
nums[left]= nums[right];
nums[right]= tmp;
cur =false;}}else{
if((nums[right] % 2)==0){
right--;}else{
int tmp = nums[right];
nums[right]= nums[left];
nums[left]= tmp;
cur =true;}}}return nums;}}
class Solution {
public int[] twoSum(int[] nums, int target){
int left =0;
int right = nums.length -1;
int[] arr = new int[2];
while(left < right){
if(nums[left] + nums[right]== target){
arr[0]= nums[left];
arr[1]= nums[right];return arr;}else if(nums[left] + nums[right]> target){
right--;}else{
left++;}}return arr;}}
class Solution {
public String reverseWords(String s){
s = s.trim(); // 删除首尾空格
int j = s.length() - 1, i = j;
StringBuilder res = new StringBuilder();
while(i >=0){
while(i >=0&& s.charAt(i)!=' ') i--; // 搜索首个空格
res.append(s.substring(i + 1, j + 1) + " "); // 添加单词
while(i >=0&& s.charAt(i)==' ') i--; // 跳过单词间空格
j = i; // j 指向下个单词的尾字符
}return res.toString().trim(); // 转化为字符串并返回
}}