21xrx.com
2024-12-22 16:45:35 Sunday
登录
文章检索 我的文章 写文章
Java面试常见算法题及解决方法
2023-06-15 07:35:24 深夜i     --     --
Java面试 算法题 代码案例

作为Java工程师,在面试过程中经常会被考察算法的知识,因为算法和数据结构是编程的基础。在这篇文章中,我们将讨论Java面试中常见的算法题及其解决方法,并附上相应的代码案例,希望能够帮助读者在面试中更好地应对。

一、如何判断一个数是奇数还是偶数?

这是一道看似简单却不容易轻易答对的算法题。我们可以通过判断该数对2取余的结果是否为0来判断一个数是奇数还是偶数。代码如下:

public static boolean isEven(int n) {

  return (n % 2 == 0);

}

二、如何反转一个字符串?

反转一个字符串是一道经典的算法题,我们可以使用双指针法,从字符串的两头开始交换字符,直到指针相遇为止。代码如下:

public static String reverse(String str) {

  char[] chars = str.toCharArray();

  int left = 0, right = chars.length - 1;

  while (left < right) {

    char temp = chars[left];

    chars[left++] = chars[right];

    chars[right--] = temp;

  }

  return new String(chars);

}

三、如何判断一个字符串是否是回文串?

回文串是指正着读和倒着读都一样的字符串,判断一个字符串是否是回文串也是一道常见的算法题。我们可以使用双指针法,从字符串的两头开始判断字符是否相等,直到指针相遇为止。代码如下:

public static boolean isPalindrome(String str) {

  char[] chars = str.toCharArray();

  int left = 0, right = chars.length - 1;

  while (left < right) {

    if (chars[left++] != chars[right--]) {

      return false;

    }

  }

  return true;

}

  
  

评论区

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