java编写算法
是指一个类调用另一个类的么?
如果是这样的话。。
//创建一个类
public class Text1{
public static void mian(String []agrs){
//实例化另一个类
Text2 t = new Text2();
t.show();
}
}
创建第二个类
public class Text2(){
//创建一个show方法
public void show(){
System.out.println("我已经被调用了");
}
}
这就是类之间的调用。。
如果是想在方法里调用另一个类的方法
具体的也是和main()方法里的一样调用。(模仿main()方法)
❷ Java新手提问,如何编写算法和思路如何想的
第一题:
import java.math.* ;
import java.util.* ;
class TieZi{
private String name ;
private int num ;
public TieZi(String name,int num){
this.setName(name) ;
this.setNum(num) ;
}
public void setName(String name){
this.name = name ;
}
public String getName(){
return this.name ;
}
public void setNum(int num){
this.num = num ;
}
public int getNum(){
return this.num ;
}
}
public class TestOne{
private TieZi[] tz ;
public TestOne(int max){
this.tz = new TieZi[max] ;
for (int i = 0; i<max; i++){
this.tz[i] = new TieZi("跟贴_" + (i+1),this.getRandomNum()) ;
System.out.println (tz[i].getNum()) ;
}
this.getTop10(this.tz) ;
}
public int getRandomNum(){//产生100个0-99的随机数
return ((int)(Math.random()*100)) ;
}
public void getTop10(TieZi[] tz){//进行冒泡排序并且输出
TieZi temp2 = null ;
int num[] = new int[10] ;
for (int j = 0; j<tz.length; j++){
for (int i = 0; i<tz.length; i++){
if(tz[j].getNum() > tz[i].getNum()){
temp2 = tz[j] ;
tz[j] = tz[i] ;
tz[i] = temp2 ;
}
}
}
for (int i = 0; i<10; i++){
System.out.println ("贴子名: " + tz[i].getName() + "\t跟贴数: " + tz[i].getNum()) ;
}
}
public static void main(String[] args){
new TestOne(100) ;
}
}
第二题:
import java.math.* ;
import java.util.* ;
class User{
private String name ;
private double mark ;
public User(String name,double mark){
this.setName(name) ;
this.setMark(mark) ;
}
public void setName(String name){
this.name = name ;
}
public String getName(){
return this.name ;
}
public void setMark(double mark){
this.mark = mark ;
}
public double getMark(){
return this.mark ;
}
}
public class TestTwo{
private User[] tz ;
public TestTwo(int max){
this.tz = new User[max] ;
for (int i = 0; i<max; i++){
this.tz[i] = new User("用户名_" + (i+1),this.getRandomNum()) ;
System.out.println (tz[i].getMark()) ;
}
this.getTop10(this.tz) ;
}
public int getRandomNum(){//产生100个0-499的随机数
return ((int)(Math.random()*500)) ;
}
public void getTop10(User[] tz){//进行冒泡排序并且输出
User temp2 = null ;
int num[] = new int[3] ;
double jiangLi = 1.2 ;
for (int j = 0; j<tz.length; j++){
for (int i = 0; i<tz.length; i++){
if(tz[j].getMark() > tz[i].getMark()){
temp2 = tz[j] ;
tz[j] = tz[i] ;
tz[i] = temp2 ;
}
}
}
for (int i = 0; i<3; i++){
if(i == 1)
jiangLi = 1.15 ;
if(i == 2)
jiangLi = 1.1 ;
System.out.println ("用户名: " + tz[i].getName() + "\t分数: " + tz[i].getMark()*jiangLi) ;
}
}
public static void main(String[] args){
new TestTwo(100) ;
}
楼主看看吧。用的都是基础知识。选我啊
❸ java算法分别用递归和递推方法编写
//递归
private static double wages1(int n)
{
if (n <= 0)
{
return 0;
}
else if (n == 1)
{
return 1500*12;
}
else
{
return wages1(n-1) * 1.1;
}
}
//递推
private static double wages2(int n)
{
if (n <= 0)
{
return 0;
}
double wages = 1500 * 12;
for (int i = 1; i < n ; i++)
{
wages *= 1.1;
}
return wages;
}
❹ 用java写算法
public class TextFilef{
public static String[] Analyze(String stringNumbers){
String numbers[]=new String[10];
int begin=0;
int end=0;
int count=0;
stringNumbers=stringNumbers.trim();
do{
end=stringNumbers.indexOf(' ');//第一个空格的位置
numbers[count++]=stringNumbers.substring(begin,end).trim();
//取得begin,end之间的子串
stringNumbers=stringNumbers.substring(end).trim();//去掉已经存到数组中的那些字符
}while(!stringNumbers.equals("")||stringNumbers.indexOf(' ')!=-1);//循环直到字符串中没有空格,或者字符串已经扫描完了,才会结束
return numbers;
}
}
楼主可以做一个测试程序册以下,我已经测试通过了。
❺ JAVA编写算法求值
凑合看吧。。。
classCollector{
privateSampletempSample;
privatetemp;
privateSamplegetSample(){
Samples=newSample();
//TODO获取时间和value
returns
}
privateIntegergetTemp(Samplea,Sampleb){
Integeri=null;
//TODO自己实现你那个对比时间获得temp的方法
returni;
}
privatevoidcollect(){
while(1){
Samples=getSample();
if(tempSample==null){
tempSample=s;
continue;
}
temp=getTemp(tempSample,s);
tempSample=s;
//TODO休眠随机时间
//Thead.sleep();
}
}
publicstaticvoidmain(String[]args){
Collectorc=newCollector();
Collector.
}
}
classSample{
privateDatetime;
privateIntegervalue;
//setter&getter
...
}
❻ java 算法设计基础 编程
import java.util.Arrays;
public class Sort {
public static void main(String[] args) {
// 生成随机数
int k[] = new int[10];
for(int i=0;i<10;i++){
int x=(int)(Math.random()*100);
k[i] = x;
System.out.print(k[i]+" ");
}
System.out.println();
//
Arrays.sort(k);
for(int i=0;i<10;i++)
System.out.print(k[i]+" ");
System.out.println();
//冒泡排序法
for (int i = 0; i < k.length; i++) {
for (int l = 0; l < k.length; l++) {
int temp;
if (k[i] < k[l]) {
temp = k[l];
k[l] = k[i];
k[i] = temp;
}
}
}
for (int i = 0; i < k.length; i++) {
System.out.print(k[i] + " ");
}
}
}
❼ java算法有哪些分别
您好:
java中的算法,常见的有:递归、迭代、查找、排序(包含冒泡排序、选择排序、插入排序、快速排序四种) 等,算法有很多,一般数据结构中涉及到的都可以用java语言实现。
举几个例子:
1.递归的例子:
不一一举例,仅供参考!
❽ java算法编程
System.out.println("加油,你行的");
❾ JAVA 实现算法
编码是不能用字符串的,大大大降低速度
public class Test{
static public int getIntegerComplement(int n){
return ~n&((1<<(32-Integer.numberOfLeadingZeros(n)))-1);
}
public static void main(String[] args){
int a[]={1,5,50,256,65536};
for(int i:a){
int r=getIntegerComplement(i);
System.out.println(i+" "+Integer.toBinaryString(i)+
" => "+r+" "+Integer.toBinaryString(r));
}
}
}
========
1 1 => 0 0
5 101 => 2 10
50 110010 => 13 1101
256 100000000 => 255 11111111
65536 10000000000000000 => 65535 1111111111111111
❿ 用JAVA编写一个简单的 查询算法!谢谢大哥大姐了
import java.io.*;
public class Test
{
/**
* @param args
*/
public static void main(String[] args) throws IOException
{
// TODO Auto-generated method stub
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String str=br.readLine();
System.out.println("请输入要查询的单词");
String s=br.readLine();
int count=0;
int m=0;
int begin=-1;
int end=-1;
while(true)
{
if(s.length()==1)
{
begin=str.indexOf(s);
if(m==0)
{
System.out.println("第一次出现在"+begin+"字节处");
}
m++;
end=begin;
}
else
{
begin=str.indexOf(s.substring(0,1));
if(m==0)
{
System.out.println("第一次出现在"+begin+"字节处");
}
end=str.indexOf(s.substring(s.length()-1));
}
if(begin==-1||end==-1)
{
break;
}
if(s.equals(str.subSequence(begin, end+1)))
{
count++;
str=str.substring(end+1);
}
else
{
str=str.substring(end+1);
}
}
System.out.println("单词"+s+"出现了"+count+"次");
}
}