面试算法题4

时间:2021-01-01 09:56:19

 面试算法题4

据说是华为笔试题,练习了一下。

package src;
/*
 * 第二题: 假设有个int型的数n,实现高低位的互换,比如12345,给换成54321,写一个方法实现n的高低位的互换。(n是几不知道)
 */
import java.io.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Mymethod5 {
 public static Integer n;
 public static void main(String[] args) throws NumberFormatException, IOException{
  BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
  System.out.println("请输入一整数: ");
  n=Integer.parseInt(br.readLine());
  String str=n.toString();
  Pattern p=Pattern.compile("[//d]+");
  Matcher m=p.matcher(str);
  char temp;
  if(!m.matches()){
   System.out.println("输入数据有误,请核对!!");
  }else{
   char[] ch=str.toCharArray();
   for(int i=0;i<ch.length/2;i++){
    temp=ch[i];
    ch[i]=ch[ch.length-i-1];
    ch[ch.length-i-1]=temp;
   }
   System.out.println(ch);
  }

 }
}
---------------------------------

输出结果:

请输入一整数:
25436321
12363452