剑指Offer java代码

来源:互联网 发布:网络小精灵 编辑:程序博客网 时间:2024/05/16 08:35

在牛客网上通过的代码

数组查找

/**在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。 * 请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 * 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;        }    }}
0 0
原创粉丝点击