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面试中更好地准备这些基础但重要的知识点。
以下是一些可能出现的经典面试题目及其详细解释: 1. **编程语言**: - **解释变量作用域**:理解不同编程语言中的局部变量、全局变量和类变量的作用范围。 - **面向对象设计原则**:如单一职责原则、开放封闭...
"编程之美——微软技术面试心得"这本书是这个压缩包中的核心文件,它很可能包含了微软公司在面试中常问的算法题目和解题策略。微软作为全球顶级的科技公司,其面试标准往往代表了业界的高标准。书中可能涵盖的算法...
- 遍历数组,每遇到一个新元素就将其加入堆中,若堆的大小超过k,则弹出堆顶元素。 - 最终堆中的元素即为最小的k个元素。 #### 6. 腾讯排数 **知识点**:本题考查如何解决一种特殊类型的数学谜题。 **解题思路**:...
在算法题目这一主题中,我们首先会遇到的是基础算法,例如: 1. **排序算法**:包括冒泡排序、插入排序、选择排序、快速排序、归并排序、堆排序等。这些排序算法各有优劣,理解它们的工作原理有助于在实际问题中...
在算法题中,C++的STL(Standard Template Library)库,包括vector、list、set、map等容器,以及algorithm头文件中提供的各种算法函数,如sort、find、unique等,都是常用工具。例如,"试题10"可能需要利用指针进行...
这些资料涵盖了一系列重要的算法和编程题目,通过深入学习,你可以更好地理解和掌握面试中可能遇到的问题。 首先,"剑指Offer"是许多程序员面试准备的必读之作。它由名企面试官精讲,提供了大量典型的编程题目,...
囊括了本人在面试中可能遇到以及总结的相关问题,秋招除了华为的offer外,陆陆续续也拿到了美团、字节等offer,同时分别也靠着这个在商汤、电信研究院、华为都进行过相关算法实习;总体问题的重复度还是很高的,不过...
"JAVA经典算法40题.doc"这个文档很可能包含了各种经典的算法题目,你可以通过解决这些问题来加深对Java算法的理解。同时,不断练习和应用这些算法,不仅可以提升你的编程技能,也能帮助你在面试中脱颖而出,顺利获得...
以下是对给定文件中提及的几个经典算法题目的深入解析,旨在帮助准备Java面试的开发者们全面掌握相关知识点。 ### 1. 打印九九乘法表 在Java中实现九九乘法表的打印,主要涉及到嵌套循环的应用。代码示例中,外层...
为此,有一本专门的算法图解笔记,收录了105道高频面试算法题目,以漫画图解的形式呈现,适合算法初学者和中级读者。这本教程注重基础知识的串联,力求让每个读者都能掌握每道题目的解题思路。其特色在于每道题都有...
"个人算法题目分享希望大家支持"这个标题表明,这是一个关于算法题目的集合,可能包含了多种编程语言的解题代码,如Java、C++和Python,旨在帮助学习者提升算法能力,为面试和软考(软件水平考试)做好准备。...
此外,书中还涵盖了动态规划、回溯法、贪心算法等高级算法主题,这些都是面试中经常遇到的问题类型。 在Java编程方面,本书可能包含了一些使用Java实现的数据结构和算法示例。Java是一种广泛应用于企业级开发的面向...
面试中可能会遇到的问题有:如何设计一个高并发的购物车系统,或者如何实现高效的推荐算法。此外,链表操作、二叉树遍历、滑动窗口等经典算法也是常见的面试题。阿里还会关注候选人在实际项目中的应用经验,期望看到...
一站式解决前端面试遇到的算法问题,咱们只专注于前端高频算法。 解决痛点: (1)LeetCode 题目太多,不知从何刷起?面试题目有些是前端常考,有些是后端常考? 答:本站参照 CodeTop上的前端算法...
总之,“python 开发学习1112页经典算法案例题目”是一个丰富的资源库,它将帮助Python开发者系统地学习和掌握算法知识,无论你是准备面试,还是提升自身编程能力,这个资源都将是你宝贵的参考资料。通过深入研究和...
下面将详细讨论在面试中常常遇到的一些重要算法及其应用场景。 1. **剑指offer题目**:《剑指Offer》是一本针对国内互联网公司面试的经典算法题集,其中包含了大量的经典问题,如数组中的逆序对、二叉树的镜像、...
本资料集合了针对字节跳动面试题、LeetCode 以及《剑指 Offer》中的经典算法题目,旨在帮助你提升编程思维和解决问题的能力。 一、字节跳动面试题 字节跳动作为全球领先的科技公司,其面试过程中对算法的考察深入且...
面试中可能会遇到的具体题目可能涵盖以下主题: 1. 算法复杂度分析:理解时间复杂度和空间复杂度的概念,计算常见算法的时间复杂度。 2. 栈与队列应用:实现表达式求值、括号匹配等。 3. 二叉树操作:遍历(前序、...