A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 郑委员 中级黑马   /  2019-5-26 17:48  /  716 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 郑委员 于 2019-5-26 17:56 编辑

【上海校区】Java笔试题之算法



    1、设计一个算法,让一个数组的奇数放在偶数的左边。
解题思路:

[Java] 纯文本查看 复制代码
/**
* 数组排序功能
*/
public class test {
    public static void main(String[] args) {
        int[] v = { 1,2,5,4,9};
        test t = new test();
        t.swap(v);
          //循环输出输出排序交换的数组  
        for(int i = 0; i < v.length; i++) {  
            System.out.print(v+" ");  
        } 
    }

    //交换两个数字
    public void swap(int[] v) { 
        for(int i = 0,j = 0;i < v.length; i++){   
            //判断是不是奇数
           if(v % 2 != 0) {                      
               int tmp = v;  
               v = v[j];  
               v[j] = tmp;  
               j++;
           }  
       }  
    }  
}


    2、去除字符串中的指定字符。
解题思路:
以下方法并不能体现算法

[Java] 纯文本查看 复制代码
public class StringTest {
    public static void main(String[] args) {
        String str = "hello world!";
        char c = 'h';
        StringTest stringTest = new StringTest();
        System.out.println("新字符串为:" + stringTest.delChar1(str, c));
        System.out.println("新字符串为:" + stringTest.delChar2(str, c));
    } 

    //遍历每一个字符,找到该字符进行替换
    public String delChar1(String str,char c) {
        String newStr = "";
        if(!"".equals(str)) {
            for (int i = 0; i < str.length(); i++) {
                if (str.charAt(i) != c) {
                    newStr += str.charAt(i);
                }
            }
        }
        return newStr;
    }

    //利用replace来进行替换:"将指定字符转换为"""
    public String delChar2(String str,String c) {
        String newStr = "";
        if(!"".equals(str)) {
            newStr = str.replace(c, "");
        }
        return newStr;
    }
}


    3、字符串倒序输出
解题思路:

[Java] 纯文本查看 复制代码
/**
* 字符串倒序排列
*/
public class StringRever{
    public static void main(String[] args) {
        convertStr("helloworld");
        convertStr2("helloworld");
    }

    //StringBuffer的reverse方法实现反转
    private static void convertStr(String string) {
        String str = new StringBuffer(string).reverse().toString();
        System.out.println(str);        
    }

    //遍历字符串每个字符进行倒序输出
    private static void convertStr2(String string) {
        for(int i=string.length()-1;i>=0;i--){
            System.out.print(string.charAt(i));
        }   
    }
}
——本文转自CSDN

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马