在牛客网上通过的代码
数组查找
/**在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。
* 请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
* Created by guanhang on 2016/7/14.
*/
public class Solution1 {
public boolean Find(int [][] array,int target) {
if (array == null) {
return false;
}
int colum = array[0].length-1;
int row = 0;
while (row < array.length && colum >= 0) {
if (array[row][colum] == target) {
return true;
}
if (array[row][colum] > target) {
colum--;
} else {
row ++;
}
}
return false;
}
}
空格替换
/**请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
* Created by guanhang on 2016/7/14.
*/
public class Solution2 {
public String replaceSpace(StringBuffer str) {
String string = str.toString();
String result = string.replace(" ", "%20");
return result;
}
}
递归版:
/**递归版的解决方案
* Created by guanhang on 2016/7/14.
*/
public class Solution3_1 {
ArrayList<Integer> list = new ArrayList<>();
public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
if (listNode != null) {
printListFromTailToHead(listNode.next);
list.add(listNode.val);
}
return list;
}
private static class ListNode {
int val;
ListNode next = null;
ListNode(int val) {
this.val = val;
}
}
}