- 浏览: 35992 次
- 性别:
- 来自: 上海
-
文章分类
最新评论
要求从键盘输入10个数并按从小到大的顺序排序。用JAVA做。
public static void main(String args[]){
/*int [] num={1,2,5,4,3,6};
Arrays.sort(num);
for(int i=0;i<num.length;i++)
System.out.println(num[i]);*/
int[] sz=new int[10];
int n=0;
String str;
InputStreamReader isr=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(isr);
try{
while(n<10)
{
str=br.readLine();
sz[n]=Integer.parseInt(str);
n++;
}
Arrays.sort(sz);
//sort(sz,10);
for(int i=0;i<10;i++)
System.out.println(sz[i]);
}
catch(Exception e){}
}
private static void sort(int[] sz,int n) {
int temp,i,j;
for(i=n-1;i>0;i--)
for(j=0;j<i;j++)
if(sz[j]>sz[j+1])
{
temp=sz[j];
sz[j]=sz[j+1];
sz[j+1]=temp;
}
}
1.父子俩的年龄:父亲今年30岁,儿子今年6岁,问多少年后父亲的年龄是儿子年龄的2倍。*/
package exec;.
public class Age ...{
public static void main(String[] args) ...{
// TODO Auto-generated method stub
int father = 30;
int son = 6;
for(int i=1;i<100;i++)
...{
if((father+i)==((son+i)*2))...{
System.out.println(i + " 年");} } }}
2.编写程序,将两个各有6个整数的数组,合并成一个由小到大排列的数组,(该数组的长度为12)*/
package exec;
import java.util.Arrays;
public class Arrary ...{
public static void main(String[] args) ...{
// TODO Auto-generated method stub
int a[] = ...{ 1, 3, 5, 8, 9, 4 };
int b[] = ...{ 2, 4, 7, 6, 5, 9 };
int c[] = new int[12];
for (int i = 0; i < 6; i++) ...{
c[i] = a[i];
c[i + 6] = b[i];
}
Arrays.sort(c);
for (int i = 0; i < 12; i++) ...{
System.out.print(c[i] + " "); } }}
3.一个球从100米高度自由落下后,反弹回原来高度的一半。按此规律,到第10次落地时,行程共有多少米? * 然后将反弹起多高? */
package exec;
public class BallFall ...{
public static void main(String[] args) ...{
// TODO Auto-generated method stub
float heigher = 100;
float sum = 0;
for (int i = 1; i < 10; i++) ...{
heigher /= 2;
sum += heigher;
System.out.println("第" + i + "次" + "总行程" + sum + "米" + "反弹"
+ heigher + "米"); } }}
4. 换硬币:把一元人民币换成5分、2分、1分的硬币,有多少种换法? */
package exec;
public class ChangeCoin ...{
public static void main(String[] args) ...{
// TODO Auto-generated method stub
int num = 0;
for (int i = 1; i <= 20; i++) ...{
for (int j = 1; j <= 50; j++) ...{
for (int k = 1; k <= 100; k++) ...{
if (5 * i + 2 * j + 1 * k == 100) ...{
num += 1; } } } }
System.out.print(num + "种换法"); }}
5.牛的繁殖问题 :有位科学家曾出了这样一道数学题:有一头母牛,它每年年初要生一头小母牛;
* 每头小母牛从第四个年头起,每年年初也要生一头小母牛。按此规律,若无牛死亡,第20年头上共有多少头母牛?*/
package exec;
public class CountCow ...{
int[] cowNumber = new int[21];
public void count(int increaseCycle, int years) ...{
cowNumber[0] = 1;
for (int currentYear = 1; currentYear <= years; currentYear++) ...{
if (currentYear < increaseCycle) ...{
cowNumber[currentYear] = cowNumber[currentYear - 1] + 1;
} else ...{
cowNumber[currentYear] = cowNumber[currentYear - 1]
+ cowNumber[currentYear - increaseCycle + 1];
}
System.out.println("第" + currentYear + "年" + cowNumber[currentYear]); } }
public static void main(String[] args) ...{
int increaseCycle = 4;
int years = 20;
CountCow cow = new CountCow();
cow.count(increaseCycle, years); }}
6.打印出500之内所有能被7或9整除的数*/
package exec;
public class Divide ...{
public static void main(String[] args) ...{
// TODO Auto-generated method stub
for (int i = 0; i <= 500; i++) ...{
if ((i % 7 == 0) | (i % 9 == 0)) ...{
System.out.print(i + " "); } } }}
7. * 编写一个Java程序 使它随即产生1800到2000之间的年份,打印它是否是一个闰年,闰年是1584年以后的年份,它要能被400整除, * 要能被4整除但是不能被100整除,已知使用Math.random()方法可以产生0到1之间的随即小数. ) */
package exec;
public class EmergerYear ...{
public static void main(String[] args) ...{
// TODO Auto-generated method stub
for (int i = 0; i < 100; i++) ...{
long year = (Math.round(Math.random() * 200) + 1800);
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) ...{
System.out.println(year + "是闰年!");
} else System.out.println(year + "不是闰年!"); } }}
8.编写程序以递归的方式实现1+2+3+...+n(n=200)的计算.*/
package exec;
public class Number ...{
public static void main(String[] args) ...{
// TODO Auto-generated method stub
System.out.print(numbers(200));
} public static int numbers(int n)...{
return n<=1?1:n+numbers(n-1); }}
9.给定一个数,并由键盘输入若干个数,找出与预先给定的数最接近的数,并指出它是由键盘输入的第几个数。
package exec;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class NumberCompare ...{
public static final int NUMBER = 80; // 给定一个要比较的数
public static void main(String args[]) ...{
System.out.print("Please input numbers: ");
BufferedReader io = new BufferedReader(new InputStreamReader(System.in));
try ...{
// 从键盘输入若干数
String line = io.readLine();
// 放入数组中
String[] items = line.split(" ");
int temp = 5000, x = 0, place = 0;
System.out.println("target number: 80");
// 和给定的数比较大小
for (int i = 0; i < items.length; i++) ...{
if (Integer.parseInt(items[i]) > NUMBER) ...{
x = Integer.parseInt(items[i]) - NUMBER;
} else ...{
x = NUMBER - Integer.parseInt(items[i]);
}
if (x < temp) ...{
temp = x;
place = Integer.parseInt(items[i]); } }
System.out.println("place: " + place);
io.close();
System.exit(0);
} catch (IOException e) ...{
e.printStackTrace(); } }}
10.使用Java,long.Math类,生成10个0到99之间的随即整数,求出它们中的最小值和最大值*/
package exec;
import java.util.Iterator;
import java.util.TreeSet;
public class RandomNumber ...{
public static void main(String[] args) ...{
// TODO Auto-generated method stub
/** *//**方法1
long max = 50;
long min = 50;
for(int i=0; i<10; i++){
long number = Math.round(Math.random()*99 + 1);
System.out.print(number + " ");
max = Math.max(max, number);
min = Math.min(min, number);
if(i == 9){
System.out.print(" Math MaxNumber=" + max + " MinNumber=" + min); } }
//方法2
TreeSet ts = new TreeSet();
for(int i=0; i<10; i++)...{
long number = Math.round(Math.random()*99 + 1);
System.out.print(number + " ");
ts.add(number);
}
System.out.println();
Iterator it = ts.iterator();
while(it.hasNext())...{
System.out.print(it.next() + " "); }
System.out.print(" Math MaxNumber=" + ts.last() + " MinNumber=" + ts.first());}}
11.假设有一条钢材长2000米,每天截取其中的一半,编写一程序求出多少天后,钢材的长度小于5米.*/
package exec;
public class SteelSection ...{
public static void main(String[] args) ...{
// TODO Auto-generated method stub
int i = 0;
float steel = 2000f;
while (steel >= 5) ...{
i++;
steel = steel / 2;
System.out.println(i + "天后钢管长" + steel + "米"); } }}
12.完全数是指其所有因子(包括1但不包括该数自身)的和等于该数,例如28=1+2++4+7+14,28就是一个完全数. * 编写一个程序求出2到10000之间的所有完全数.*/
package exec;
public class WanNumber ...{
public static void main(String[] args) ...{
// TODO Auto-generated method stub
int m = 0;
for (int n = 2; n <= 10000; n++) ...{
m = 0;
for (int i = 1; i < n; i++) ...{
if (n % i == 0) ...{
m += i;
//if (m == n) ...{ System.out.println(n + "个完全数"); }
}
}if (m == n) ...{ System.out.println(n + "个完全数"); } } }}
//////////////////////////////
int n,sum =0;
for ( int i = 2; i <= 10000;i++)
{
sum =0;
for ( int j = 1;j < i; j++)
发表评论
相关推荐
虽然说在前端很少有机会接触到算法,大多都交互性的操作,然而从各大公司面试来看,算法依旧是考察的一...下面这篇文章就给大家总结了在前端JS面试中常见的算法问题,有需要的朋友们可以参考借鉴,下面来一起看看吧。
在IT行业的面试中,算法问题是一项重要的考核标准,它反映了候选人的逻辑思维能力和问题解决能力。下面我们将深入探讨几个常见的面试中出现的算法问题:斐波那契序列、汉诺塔游戏、二叉树遍历以及数学计算和字符串...
"常见面试算法题"这一主题涵盖了编程面试的核心部分,旨在帮助求职者准备这些关键的挑战。下面将详细讨论相关知识点。 1. **算法基础**:算法是解决问题的步骤集合,面试中常见的包括排序算法(如冒泡、选择、插入...
此外,《编程之法:面试和算法心得》每一章都有“举一反三”和“习题”,以便读者及时运用所学的方法解决相似的问题,且在附录中收录了语言、链表、概率等其他题型。书中的每一道题都是面试的高频题目,反复出现在近...
在面试过程中,面试官通过算法问题来评估求职者的逻辑思维、问题解决技巧和代码实现能力。因此,对于求职者来说,熟悉和掌握经典算法,不仅能提高面试通过率,也有助于在工作中解决复杂问题。在准备阶段,除了阅读...
以下是一些常见的面试算法题及其详解: 1. **二分查找**:二分查找是一种在有序数组中寻找特定元素的搜索算法。它通过不断缩小查找范围,每次将查找区间减半,直到找到目标元素或确定其不存在。了解如何设计递归或...
通过深入学习和实践这些Java实现的算法问题,开发者不仅能提高编程技能,还能增强对问题解决策略的理解,为面试和实际工作中的问题解决打下坚实基础。同时,这些题目也可以作为日常训练,提升逻辑思维能力和编程效率...
在当今软件行业的发展中,程序员面对的面试挑战越来越大,尤其是在掌握编程语言以及算法设计方面。本文将详细探讨39道JAVA经典算法面试题目,每题都附带答案和解析,从而帮助读者深入理解并提升自身在JAVA编程中的...
《程序员面试经典算法题》是针对程序员在面试过程中可能会遇到的算法问题进行深入解析的一份资源。这份资料旨在帮助程序员提升算法思维,从而在技术面试中脱颖而出。通过学习和掌握这些经典算法,不仅可以提高编程...
矩阵着色问题是一种经典的计算机科学问题,特别是在图论和算法设计中有着广泛的...在面试中,这个问题能很好地测试候选人的算法设计、问题分析和编程技能,对于理解计算机科学中的递归和搜索策略有着重要的实践意义。
本资料“常见面试中C++算法大全”旨在帮助求职者和开发者系统地理解和掌握在面试中常见的C++算法题目,以提升在技术面试中的表现。 首先,我们来讨论C++的基础知识。C++是一种静态类型的、编译式的、通用的、大小写...
包括算法分析与设计基本概念及各章节问题回答。可供研究生复试或相关专业岗位面试使用。 1. 简述算法定义、属性及指标; 2. 什么是算法分析,怎么做算法设计; 3. 什么是算法复杂性; 4. 枚举法算法的基本思想; 5. ...
本文将深入探讨一些常见的PHP面试中的算法问题。 一、排序算法 1. 冒泡排序:是最基础的排序算法,通过重复遍历数组,比较相邻元素并交换位置来实现排序。虽然效率较低,但对于面试来说是理解排序原理的好起点。 ...
以下是一些华为面试中常见的算法及其详细解释: 1. 排序算法: - 冒泡排序:通过重复遍历待排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,...
该标题表明了这是一份计算机常见算法面试题的资源,涵盖了各种算法问题。 描述:各大名企常见面试题,在网上搜集整理的,很不错的资源。希望要去面试的人下下来看看 该描述表明了这是一份来自各大名企的面试题搜集...
尽管没有具体的文件内容展示,但我们可以根据常见的面试算法类别来探讨一些重要的知识点。 1. **数据结构**:在面试中,数据结构是基础中的基础,如数组、链表、栈、队列、堆、树(二叉树、平衡树如AVL和红黑树)、...
2. 如何准备面试算法: - 学习基础算法:了解并练习常见的数据结构和算法,如链表、树、图、排序、搜索等。 - 经典问题练习:对常见的算法问题进行深入练习,理解解题思路和优化方法。 - 编码能力提升:通过反复...
数据结构是计算机科学中的核心概念,它涉及到如何在内存中有效地组织和管理数据,以便进行高效...通过深入理解和熟练掌握这些数据结构和算法,不仅可以提高面试的成功率,也能在实际工作中提升编程效率和问题解决能力。
Java 面试经典算法是指在 Java 面试中经常会被问到的算法题目,这些题目涵盖了数据结构、算法设计、编程语言基础知识等方面的知识。本文总结了 17 道 Java 面试经典算法题目,并对每道题目进行了详细的分析和解释。 ...
本文将以“腾讯面试算法”为例,探讨在大数据量下高效算法对于性能优化的影响。在腾讯的面试过程中,面试官可能会考察候选人的算法设计能力,通过解决实际问题来评估其编程效率和逻辑思维。 首先,我们来看一个简单...