`
hone033
  • 浏览: 38356 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

面试中遇到的一些经典算法题目

阅读更多
1.写一个方法,用一个for循环打印九九乘法表

       /** *//**
     * 打印九九乘法口诀表
     */
    public void nineNineMulitTable(){
        for (int i = 1,j = 1; j <= 9; i++) {
              System.out.print(i+"*"+j+"="+i*j+" ");
              if(i==j){
                  i=0;
                  j++;
                  System.out.println();
              }
          }
    }

2.给定一个java.util.Date对象,如何转化为”2007-3-22 20:23:22”格式的字符串
    /** *//**
     * 将某个日期以固定格式转化成字符串
     * @param date
    * @return str
    */
    public String date2FormatStr(Date date)
    {
      SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
      String str = sdf.format(date);
      return str;
    }

3.写一个方法,能够判断任意一个整数是否素数
    /** *//**
    * 判断任意一个整数是否素数
    * @param num
    * @return boolean
    */
    public boolean isPrimeNumber(int num)
    {
      for (int i = 2; i <= Math.sqrt(num); i++) {
          if(num%i==0)
          {
              return false;
          }
      }
      return true;
    }

4.写一个方法,输入任意一个整数,返回它的阶乘
    
     /** *//**
      *获得任意一个整数的阶乘
      *@param n
      *@returnn!
      */
      public int factorial(int num)
      {
        //递归
        if(num == 1)
        {
            return 1;
        }
        return num*factorial(num-1);
      }

5.写一个方法,用二分查找法判断任意整数在任意整数数组里面是否存在,若存在就返回它在数组中的索引位置,不存在返回-1
      /** *//**
       *二分查找特定整数在整型数组中的位置(递归)
       *@param dataset
       *@param data
       *@param beginIndex
       *@param endIndex
       *@return index
       */
       public int binarySearch(int[] dataset,int data,int beginIndex,int endIndex){
         int midIndex = (beginIndex+endIndex)/2;
         //如果查找的数要比开始索引的数据要小或者是比结束索引的书要大,或者开始查找的索引值大于结束的索引值返回-1没有查到
         if(data <dataset[beginIndex]||data>dataset[endIndex]||beginIndex>endIndex){
             return -1;
         }
         if(data <dataset[midIndex]){ 
             return binarySearch(dataset,data,beginIndex,midIndex-1);
         }else if(data>dataset[midIndex])
         {
             return binarySearch(dataset,data,midIndex+1,endIndex);
         }else {
             return midIndex;
         }
       }
      
       /** *//**
        *二分查找特定整数在整型数组中的位置(非递归)
        *@param dataset
        *@param data
        *@return index
        */
        public int binarySearch(int[] dataset ,int data)
        {
          int beginIndex = 0; 
          int endIndex = dataset.length - 1; 
          int midIndex = -1;
          if(data <dataset[beginIndex]||data>dataset[endIndex]||beginIndex>endIndex){
              return -1;
          }
          while(beginIndex <= endIndex) {
              midIndex = (beginIndex+endIndex)/2;
              if(data <dataset[midIndex]) { 
                 endIndex = midIndex-1; 
              } else if(data>dataset[midIndex]) { 
                beginIndex = midIndex+1; 
              }else {
                return midIndex;
              }
          }
          return -1;
        }
分享到:
评论

相关推荐

    Java面试中遇到的一些经典算法题目

    ### Java面试经典算法题目解析 #### 一、打印九九乘法表 **知识点:** - 使用双重循环来实现乘法表的打印...以上就是本文档中介绍的经典算法题目的解析,希望能帮助你在Java面试中更好地准备这些基础但重要的知识点。

    经典面试题目 经典面试题目 经典面试题目 经典面试题目

    以下是一些可能出现的经典面试题目及其详细解释: 1. **编程语言**: - **解释变量作用域**:理解不同编程语言中的局部变量、全局变量和类变量的作用范围。 - **面向对象设计原则**:如单一职责原则、开放封闭...

    程序员面试经典算法题

    "编程之美——微软技术面试心得"这本书是这个压缩包中的核心文件,它很可能包含了微软公司在面试中常问的算法题目和解题策略。微软作为全球顶级的科技公司,其面试标准往往代表了业界的高标准。书中可能涵盖的算法...

    算法面试经典 100题

    - 遍历数组,每遇到一个新元素就将其加入堆中,若堆的大小超过k,则弹出堆顶元素。 - 最终堆中的元素即为最小的k个元素。 #### 6. 腾讯排数 **知识点**:本题考查如何解决一种特殊类型的数学谜题。 **解题思路**:...

    算法设计题集_算法题目_

    在算法题目这一主题中,我们首先会遇到的是基础算法,例如: 1. **排序算法**:包括冒泡排序、插入排序、选择排序、快速排序、归并排序、堆排序等。这些排序算法各有优劣,理解它们的工作原理有助于在实际问题中...

    经典编程题 经典算法题

    在算法题中,C++的STL(Standard Template Library)库,包括vector、list、set、map等容器,以及algorithm头文件中提供的各种算法函数,如sort、find、unique等,都是常用工具。例如,"试题10"可能需要利用指针进行...

    程序员面试宝典,经典算法打包下载

    这些资料涵盖了一系列重要的算法和编程题目,通过深入学习,你可以更好地理解和掌握面试中可能遇到的问题。 首先,"剑指Offer"是许多程序员面试准备的必读之作。它由名企面试官精讲,提供了大量典型的编程题目,...

    机器学习+面试题目与解答+算法工程师+NLP工程师面试题目

    囊括了本人在面试中可能遇到以及总结的相关问题,秋招除了华为的offer外,陆陆续续也拿到了美团、字节等offer,同时分别也靠着这个在商汤、电信研究院、华为都进行过相关算法实习;总体问题的重复度还是很高的,不过...

    java经典算法 面试

    "JAVA经典算法40题.doc"这个文档很可能包含了各种经典的算法题目,你可以通过解决这些问题来加深对Java算法的理解。同时,不断练习和应用这些算法,不仅可以提升你的编程技能,也能帮助你在面试中脱颖而出,顺利获得...

    java面试常遇到的算法

    以下是对给定文件中提及的几个经典算法题目的深入解析,旨在帮助准备Java面试的开发者们全面掌握相关知识点。 ### 1. 打印九九乘法表 在Java中实现九九乘法表的打印,主要涉及到嵌套循环的应用。代码示例中,外层...

    2024年互联网面试算法常见100题精析.pdf

    为此,有一本专门的算法图解笔记,收录了105道高频面试算法题目,以漫画图解的形式呈现,适合算法初学者和中级读者。这本教程注重基础知识的串联,力求让每个读者都能掌握每道题目的解题思路。其特色在于每道题都有...

    个人算法题目分享希望大家支持

    "个人算法题目分享希望大家支持"这个标题表明,这是一个关于算法题目的集合,可能包含了多种编程语言的解题代码,如Java、C++和Python,旨在帮助学习者提升算法能力,为面试和软考(软件水平考试)做好准备。...

    IT名企算法与数据结构题目面试

    此外,书中还涵盖了动态规划、回溯法、贪心算法等高级算法主题,这些都是面试中经常遇到的问题类型。 在Java编程方面,本书可能包含了一些使用Java实现的数据结构和算法示例。Java是一种广泛应用于企业级开发的面向...

    2021最新面试经验,包括百度、阿里、美团、字节跳动算法面试题总结经验

    面试中可能会遇到的问题有:如何设计一个高并发的购物车系统,或者如何实现高效的推荐算法。此外,链表操作、二叉树遍历、滑动窗口等经典算法也是常见的面试题。阿里还会关注候选人在实际项目中的应用经验,期望看到...

    2024前端算法面试(高频题库&题目解析)

    一站式解决前端面试遇到的算法问题,咱们只专注于前端高频算法。 解决痛点: (1)LeetCode 题目太多,不知从何刷起?面试题目有些是前端常考,有些是后端常考? 答:本站参照 CodeTop上的前端算法...

    python 开发学习1112页经典算法案例题目

    总之,“python 开发学习1112页经典算法案例题目”是一个丰富的资源库,它将帮助Python开发者系统地学习和掌握算法知识,无论你是准备面试,还是提升自身编程能力,这个资源都将是你宝贵的参考资料。通过深入研究和...

    面试复习_算法_算法_

    下面将详细讨论在面试中常常遇到的一些重要算法及其应用场景。 1. **剑指offer题目**:《剑指Offer》是一本针对国内互联网公司面试的经典算法题集,其中包含了大量的经典问题,如数组中的逆序对、二叉树的镜像、...

    Just Code ! 针对面试训练算法题, 目前包括字节跳动面试题、 LeetCode 和剑指 offer.zip

    本资料集合了针对字节跳动面试题、LeetCode 以及《剑指 Offer》中的经典算法题目,旨在帮助你提升编程思维和解决问题的能力。 一、字节跳动面试题 字节跳动作为全球领先的科技公司,其面试过程中对算法的考察深入且...

    面试前必备(微软数据结构+算法)

    面试中可能会遇到的具体题目可能涵盖以下主题: 1. 算法复杂度分析:理解时间复杂度和空间复杂度的概念,计算常见算法的时间复杂度。 2. 栈与队列应用:实现表达式求值、括号匹配等。 3. 二叉树操作:遍历(前序、...

Global site tag (gtag.js) - Google Analytics