`

华为机考

 
阅读更多

1. 判断回文

public class Huiwen {

    static boolean IsHuiwen(String org){
        StringBuffer strBf = new StringBuffer(org);
        StringBuffer strBfv = strBf.reverse();
        System.out.println("Org:"+org);
        System.out.println("OrgRe:"+strBfv);
        return org.equals(strBfv.toString());  //一定要用org,不能用strBf
    }
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub

        System.out.println(IsHuiwen("abcba"));
    }

}

2. 求数组中大于平均值的个数

3. 单链表逆置


public class LinkReserve {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub

        class Node{
            String value;
            Node next;
           
            public Node(String value){
                this.value = value;
            }
           
        }
        Node n1 = new Node("a");
        Node n2 = new Node("b");
        Node n3 = new Node("c");
        Node n4 = new Node("d");
        n1.next = n2;
        n2.next = n3;
        n3.next = n4;
       
        Node head = n1;
        Node pre = null;
        Node next = head.next;
        head.next = pre;
       
        while(next != null){
            pre = head;
            head = next;
            next = next.next;
            head.next = pre;
           
        }

        Node p = head;
        while(p != null){
            System.out.println(p.value);
            p = p.next;
        }

    }

}
4. 树的遍历

5. 大数相加

 

  1. import java.io.BufferedReader;  
  2. import java.io.IOException;  
  3. import java.io.InputStreamReader;  
  4. import java.util.StringTokenizer;  
  5.   
  6. public class BigIntegerOperation {      
  7.       
  8.       
  9.     public static void main(String[] args) throws IOException {  
  10.           
  11.         /** 
  12.         * 从控制台读取输入数据 格式为 num1空格num2 为空则exit 
  13.         */  
  14.         BufferedReader in = new BufferedReader(new InputStreamReader(System.in));  
  15.         String str = in.readLine();  
  16.         while(str!=null){  
  17.         StringTokenizer st = new StringTokenizer(str," ");  
  18.         String num1 = st.nextToken();  
  19.         String num2 = st.nextToken();  
  20.         int len1 = num1.length();  
  21.         int len2 = num2.length();  
  22.         /** 
  23.         * 将不等长的两输入字符串格式化,比如 num1 = 123 num2 = 1234 
  24.         * 经格式化后将成为num1 = 0123 num2 = 1234为方便计算 
  25.         */  
  26.         if(len1 > len2){  
  27.             for(int i=0; i< len1-len2; i++){  
  28.                 num2 = "0"+num2;  
  29.             }  
  30.         }else if(len2>len1){  
  31.             for(int i=0; i< len2-len1; i++){  
  32.                 num1 = "0"+num1;  
  33.             }  
  34.         }  
  35.           
  36.         int[] arr1 = BigIntegerOperation.str2intArr(num1);  
  37.         int[] arr2 = BigIntegerOperation.str2intArr(num2);  
  38.           
  39.         arr1 = BigIntegerOperation.reverse(arr1);  
  40.         arr2 = BigIntegerOperation.reverse(arr2);  
  41.           
  42.           
  43.         int[] result = BigIntegerOperation.add(arr1, arr2);  
  44.           
  45. //        System.out.print(num1 +" + " + num2 +" = ");  
  46.         for(int i=result.length-1; i>=0; i--){  
  47.             if(i == result.length-1 && result[i] == 0continue;  
  48.             System.out.print(result[i]);  
  49.         }  
  50.         str = in.readLine();  
  51.         }  
  52.     }  
  53.       
  54.     /** 
  55.     * 倒置数组元素 
  56.     */  
  57.     public static int [] reverse(int[] arr){  
  58.         int len = arr.length;  
  59.         for(int i = 0,j = len-1; i<j; i++,j--){  
  60.             int temp = arr[i];  
  61.             arr[i] = arr[j];  
  62.             arr[j] = temp;  
  63.         }  
  64.         return arr;  
  65.     }  
  66.       
  67.     /** 
  68.     *     将字符串转换成整型数组 
  69.     */  
  70.     public static int [] str2intArr(String str){  
  71.         int len = str.length();  
  72.         int [] arr = new int[len];  
  73.         for(int i = 0 ; i<len; i++){  
  74.             arr[i] = str.charAt(i) - '0' ;  
  75.         }  
  76.         return arr;  
  77.     }  
  78.       
  79.     /** 
  80.     * 核心方法   两个整型数组相加      
  81.     */  
  82.     public static int [] add(int a[], int b[]){  
  83.         int maxLen = a.length;  
  84.         int[] sum = new int[maxLen+1];  
  85.           
  86.         for(int i = 0; i< maxLen ; i++){  
  87.             int tempSum = a[i] + b[i];  
  88.             sum[i] += tempSum%10;  
  89.             int d = tempSum/10//进位  
  90.             sum[i+1] += d;              
  91.         }  
  92.         return sum;  
  93.     }  
  94.   
  95. }  

分享到:
评论

相关推荐

    华为机考100道题-带答案(word文档)

    【华为机考100题-带答案】是针对华为技术认证考试的一份复习资料,包含了一百个问题及其对应的解答。这样的文档对于备考华为认证的考生来说是极为宝贵的资源,能够帮助他们全面了解和掌握考试可能涉及的知识点。这份...

    华为机考试题+答案参照.pdf

    "华为机考试题+答案参照.pdf" 本资源是一个华为机考试题集,涵盖了多个IT领域的知识点,包括算法、数据结构、操作系统等。本文将对每个题目进行详细的解释和分析。 1. 评委打分问题: * 知识点:算法、数组操作 ...

    2014华为机考(附答案)

    2014华为机考(附答案)

    华为机考100例java.rar

    本资料“华为机考100例java.rar”旨在帮助备考者掌握Java编程的基础及进阶知识,以顺利通过华为的机考。 首先,我们来探讨一下描述中提到的关键知识点: 1. **递归**:递归是编程中的一个重要概念,它是指函数或...

    【华为机考2017】字符串解压缩算法

    华为机考2017:字符串解压缩算法,通过率100%

    华为机考试题练习汇总.txt

    华为机考练习试题汇总

    华为机考模拟题四以及答案

    根据给定文件的信息,我们可以提炼出与华为机考模拟题相关的知识点。虽然提供的内容非常有限,但是我们将尝试根据这些信息构建一个尽可能详细的知识框架,并针对可能涉及的技术领域进行阐述。 ### 华为机考模拟题四...

    华为机考攻略1

    1、 考试时间 150 分钟,满分 400 分,及格 150 分 2、遇到不会的题尽量取巧让用例通过率高一些,想死磕完美的100%很难,需要花费很久,但是如果一

    华为机考模拟题三以及答案

    根据给定的文件信息“华为机考模拟题三以及答案”,我们可以看出这是一份与华为技术有限公司相关的计算机考试模拟题目及答案。为了更好地理解和总结其中的知识点,我们需要对题目进行详细的解析。 ### 华为机考模拟...

    华为机考模拟题六以及答案

    根据给定文件的信息,我们可以提炼出与华为机考模拟题相关的几个重要知识点: ### 华为机考模拟题六及答案解析 #### 一、购买方案 **知识点概述:** 购买方案类题目主要考察考生在有限条件下进行最优决策的能力。...

    华为机考一本通-2024

    ### 华为机考一本通-2024:OD岗位与机考攻略详解 #### 一、华为OD岗位解析 ##### 1.1 OD岗位介绍 - **岗位性质**:OD岗位即华为与德科合作的精英研发项目,与传统外包项目不同,OD岗位在华为内部具有更高的地位和...

    华为机考 中级题 田忌赛马

    对即将参加华为机考的同学有极大的帮助,完美解决了田忌与国王赛马,田忌最对能够赢得的赛马场数。

    华为机考知识点总结1

    华为机考知识点总结1 本资源主要总结了华为机考的知识点,涵盖了算法、链表、字符串、数组、栈、滑窗、排序、队列等多个方面,旨在帮助考生更好地备考华为机试。 字符串知识点 1. 字符串反转:HJ12题目要求反转...

    华为机考100题(真题+含答案)

    本资源提供华为机考的100道真题及其答案,覆盖了计算机科学、编程、网络、操作系统等多个领域。这些题目反映了华为在技术岗位招聘时对应聘者的考核重点,是准备华为技术岗位面试的宝贵资料。 适用人群: 准备应聘...

    华为机考模拟题一的答案

    ### 华为机考模拟题一的答案解析 #### 题目一:求最少交换次数 **题目描述:** 给出一个长度为n的数组arr,其中包含从1到n的所有整数,但顺序可能被打乱。现在需要通过一系列的交换操作(每次交换两个元素的位置)...

    华为机考练习攻略及注意事项

    华为机考练习攻略及注意事项

    华为机考100道题-带答案《word文档》

    【华为机考100道题-带答案《word文档》】这个压缩包文件主要包含的是针对华为技术认证考试的模拟试题集,旨在帮助备考者熟悉考试格式和内容。通过这些题目,考生可以全面了解华为认证的相关知识领域,并进行自我评估...

    华为机考模拟题一(无答案)

    以上就是从“华为机考模拟题一”这个题目中提炼出的一些关键知识点。这些知识点不仅涵盖了基本的算法设计思路,还涉及到了重要的数据结构和内存管理概念。对于准备参加华为或其他技术公司面试的人来说,掌握这些知识...

    华为机考java代码:求含1的最大正方形动态规划 .txt

    华为机考编程题目当中一道经典的题目,矩阵由01组成,求包含1的最大正方形,这里用的是动态规划求解,思路有点抽象,代码很简单,编程语言java.

Global site tag (gtag.js) - Google Analytics