21xrx.com
2024-12-23 01:08:11 Monday
登录
文章检索 我的文章 写文章
Java 面试必备!常见编程题详解
2023-06-15 17:04:25 深夜i     --     --
Java 面试 编程题

在准备 Java 面试时,编程题是必不可少的一个环节。本文将介绍一些常见的编程题,并给出相应的代码案例。

1. 反转字符串

题目描述:将给定的字符串反转,例如将 "hello" 反转为 "olleh"。

代码案例:


public static String reverseString(String str) {

  if (str == null || str.length() == 0)

    return str;

  

  char[] charArr = str.toCharArray();

  int i = 0;

  int j = charArr.length - 1;

  while (i < j) {

    char temp = charArr[i];

    charArr[i] = charArr[j];

    charArr[j] = temp;

    i++;

    j--;

  }

  return new String(charArr);

}

2. 判断回文数

题目描述:判断给定的整数是否为回文数,例如 121、1221 是回文数,而 123、1222 不是。

代码案例:


public static boolean isPalindrome(int num) {

  if (num < 0 || (num % 10 == 0 && num != 0))

    return false;

  

  int rev = 0;

  while (num > rev) {

    rev = rev * 10 + num % 10;

    num /= 10;

  }

  return num == rev || num == rev / 10;

}

3. 查找最长公共前缀

题目描述:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,则返回空字符串 ""。

代码案例:


public static String longestCommonPrefix(String[] strs) {

  if (strs == null || strs.length == 0)

    return "";

  

  String prefix = strs[0];

  for (int i = 1; i < strs.length; i++) {

    while (strs[i].indexOf(prefix) != 0) {

      prefix = prefix.substring(0, prefix.length() - 1);

      if (prefix.isEmpty())

        return "";

      

    }

  }

  return prefix;

}

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复