「java线性指标」java实现线性表

博主:adminadmin 2022-11-24 06:38:06 51

本篇文章给大家谈谈java线性指标,以及java实现线性表对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java关于线性表的编程

package Test;

import java.io.BufferedReader;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.FileReader;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.io.Reader;

import java.io.StringBufferInputStream;

import java.io.StringReader;

import java.util.Scanner;

class Test {

private static Node firstList, secondList, resultList;

private static void input(Node head) throws Exception {

int a;

int b;

int i;

Node p = head;

BufferedReader reader = new BufferedReader(new InputStreamReader(

System.in));

// 读取一行信息

String input = reader.readLine();

// 以空格为分隔符,转换成数组

String[] numbers = input.split(" ");

for(i=0;inumbers.length;){

a = Integer.parseInt(numbers[i]);

b = Integer.parseInt(numbers[i+1]);

p.next = new Node(a, b);

p = p.next;

i+=2;

}

}

public static void main(String[] args) throws Exception {

firstList = new Node();

secondList = new Node();

resultList = new Node();

Node p=resultList;

System.out.println("输入第一个多项式");

input(firstList);

System.out.println("输入第二个不等式");

input(secondList);

while(firstList.next!=nullsecondList.next!=null){

if(firstList.next.zssecondList.next.zs){

p.next=new Node(firstList.next.xs,firstList.next.zs);

p=p.next;

firstList=firstList.next;

}else if(firstList.next.zssecondList.next.zs){

p.next=new Node(secondList.next.xs,secondList.next.zs);

p=p.next;

secondList=secondList.next;

}else{

p.next=new Node(firstList.next.xs+secondList.next.xs,firstList.next.zs);

p=p.next;

firstList=firstList.next;

secondList=secondList.next;

}

}

if(firstList!=null){

p.next=firstList.next;

}

if(secondList!=null){

p.next=secondList.next;

}

p=resultList;

while(p.next!=null){

System.out.print(p.next.xs+"x^"+p.next.zs+"+");

p=p.next;

}

System.out.println();

}

}

public class Node {

public int xs;//系数

public int zs;//指数

public Node next=null;//指向下一个

public Node(int a,int b) {

xs=a;

zs=b;

}

public Node(){

}

}

答案

输入第一个多项式

5 4 3 2 1 1

输入第二个不等式

4 4 3 2 1 1

9x^4+6x^2+2x^1

java线性表编程(一定要用java语言)

借用楼上的代码

import java.util.ArrayList;

import java.util.Arrays;

import java.util.Collections;

import java.util.List;

public class Test {

public static void main(String[] args) {

ListInteger l1 = new ArrayListInteger(Arrays.asList(3,5,8,11));

ListInteger l2 = new ArrayListInteger(Arrays.asList(2,6,8,9,11,15,20));

ListInteger tmp = new ArrayListInteger(l2);

tmp.removeAll(l1);

ListInteger result = new ArrayListInteger(l1);

result.addAll(tmp);

System.out.println(result);

l1.addAll(l2);

Collections.sort(l1);

System.out.println(l1);

}

}

用JAVA实现线性表排序

package Test;

import java.util.Random;

import java.io.*;

import java.util.Date;

import java.text.SimpleDateFormat;

import java.util.Calendar;

public class Baidu {

/**

* 生成随机数组

* @param n int

* @return int[]

*/

public int[] creatarray(int n) {

Random random = new Random();

int array[] = new int[n];

for (int i = 0; i array.length; i++) {

array[i] = random.nextInt();

}

return array;

}

/**

* 排序函数

* @param data int[]

* @param n 参数长度

* @param cNo 比较的值 是0

*/

public int[] merge(int[] data, int n, int cNo) {

int length1 = 0;

int length2 = 0;

int length0 = 0;

int array1[] = new int[n]; //正数

int array2[] = new int[n]; //负数

int array0[] = new int[n]; //零

int redata[] = new int[n]; //返回数组

for (int i = 0; i n; i++) {

if (data[i] 0) {

array1[length1] = data[i];

length1++;

} else if (data[i] == 0) {

array0[length0] = data[i];

length0++;

} else {

array2[length2] = data[i];

length2++;

}

}

for (int i = 0; i length1; i++) {

redata[i] = array1[i];

}

for (int i = 0; i length0; i++) {

redata[length1 + i] = array0[i];

}

for (int i = 0; i length2; i++) {

redata[length1 + length0 + i] = array2[i];

}

return redata;

}

/**

* 输出函数

* @param time int[]

* @param before int[]

* @param end int[]

* @param n int

*/

public void out(long[] time, int[] before, int[] end, int n) {

for (int v = 0; v n; v++) {

System.out.println("第" + v + "组耗时:" + time[v] + " 原来是:" + before[v] +

" 排序后为:" + end[v]);

}

}

public static void main(String args[]) {

Baidu tt = new Baidu();

int[] array = new int[20];

int[] arrayEnd = new int[20];

array = tt.creatarray(20);

int forNum = 3; //循环次数

long[] timeall = new long[forNum];

for (int i = 0; i forNum; i++) {

Calendar cCalendar = Calendar.getInstance();

long currTimebegin = cCalendar.getTimeInMillis();

arrayEnd = tt.merge(array, 20, 0);

cCalendar = Calendar.getInstance();

long currTimeend = cCalendar.getTimeInMillis();

long time = currTimeend - currTimebegin;

timeall[i] = time;

}

tt.out(timeall, array, arrayEnd, forNum);

}

}

大体思路吧 稍微在此基础上修改一下即可

java建立一个线性表

import java.util.ArrayList;

import java.util.List;

public class ListDemo {

public static void main(String[] args) {

int numLength = 10;

int deleteNum = 5;

ListInteger list = new ArrayListInteger();

init(numLength,list);

delete(deleteNum,list);

print(list);

}

private static void print(ListInteger list) {

for(int i=0;ilist.size();i++){

System.out.print(list.get(i) +"\t");

}

}

private static void delete(int deleteNum,ListInteger list) {

for (int i=0;ilist.size();i++){

if((int)list.get(i)==deleteNum){

list.remove(i);

}

}

}

private static void init(int numLength,ListInteger list) {

for(int i=1;i=numLength;i++){

list.add(i);

}

}

}

//当然你要是把你的代码贴上来就更好了,可以帮忙找出问题,另外也可以知道你对java了解到哪个程度了呵,给出的帮助可能更实际一些

Java设计线性表排序算法

import java.util.Scanner;

import java.util.Arrays;

public class P

{

public static void main(String[] args)

{

Scanner sc=new Scanner(System.in);

float[] A=new float[1],B=new float[1];

int alen=0,blen=0,i,j,k;

String line;

System.out.println("请输入线性表A的各元素,每行一个(输入#结束):");

while(true)

{

line=sc.nextLine();

if(line.equals("#"))

break;

A=Arrays.copyOf(A,++alen);

A[alen-1]=Float.parseFloat(line);

}

System.out.println("请输入线性表B的各元素,每行一个(输入#结束):");

while(true)

{

line=sc.nextLine();

if(line.equals("#"))

break;

B=Arrays.copyOf(B,++blen);

B[blen-1]=Float.parseFloat(line);

}

Arrays.sort(A);

Arrays.sort(B);

System.out.println("升序排序后,线性表A的各元素是:");

for(i=0;ialen;i++)

{

System.out.print(A[i]+" ");

}

System.out.println();

System.out.println();

System.out.println("升序排序后,线性表B的各元素是:");

for(i=0;iblen;i++)

{

System.out.print(B[i]+" ");

}

System.out.println();

System.out.println();

A=Arrays.copyOf(A,alen+blen);

for(i=0;iblen;i++)

{

if(B[i]=A[alen-1])

A[alen++]=B[i];

else

{

for(j=0;jalen-1;j++)

{

if(B[i]=A[j])

break;

}

for(k=alen-1;k=j;k--)

{

A[k+1]=A[k];

}

A[j]=B[i];

alen++;

}

}

System.out.println("线性表B按顺序插入线性表A中后,线性表A的各元素是:");

for(i=0;ialen;i++)

{

System.out.print(A[i]+" ");

}

sc.close();

}

}

java线性指标的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java实现线性表、java线性指标的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-24,除非注明,否则均为首码项目网原创文章,转载请注明出处。