1,二维数组查找和替换空格
问题描述:
在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,
每一列都按照从上到下递增的顺序排序。请完成一个函数,
输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
Java代码:
1 /**
题意:数组从左到右递增,从上到下递增
思路:以左下的元素开始比较,大于j就右移,小于i就上移(同理,以右上的元素比较也可以)
, */
public boolean Find(int target, int [][] array) { 2 // 判断是否为空数组 3 if (array == null || array.length == 0 || (array.length == 1 && array[0].length == 0)) { 4 return false; 5 } 6 7 if (target < array[0][0] || target > array[array.length - 1][array[array.length - 1].length - 1]) {
return false;//判断目标值是否在数组中 8 } 9 int i=array.length;//获取二维数组的行数 10 int j=0; 11 12 while(i>=1 && j<array[0].length){ 13 if(target==array[i-1][j]){//判断是否相等 14 return true; 15 }else if(target<array[i-1][j]){//目标值小于该值 16 i--;//上移 17 continue;//跳出本次循环 18 }else if(target>array[i-1][j]){//目标值大于该值 19 j++;//右移 20 continue; 21 } 22 } 23 return false; 24 }
问题描述:
请实现一个函数,将一个字符串中的每个空格替换成“%20”。
例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
1 public static String replaceSpace2(StringBuffer str) { 2 StringBuffer out = new StringBuffer(); 3 for (int i = 0; i < str.toString().length(); i++) { 4 char b = str.charAt(i); 5 if (b == 32) {//判断空格 (空格的十进制是32) 6 out.append("%20"); 7 } else { 8 out.append(b); 9 } 10 } 11 return out.toString(); 12 }

浙公网安备 33010602011771号