「数据结构笔记java版」java基本数据结构
本篇文章给大家谈谈数据结构笔记java版,以及java基本数据结构对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、数据结构c语言版和java版有什么不同
- 2、数据结构求解素数环问题(JAVA版):将N个自然数(1~N),使得每相邻两数之和为素数,构成一个素数环!
- 3、学习数据结构(java版)是否需要什么环境设置,为什么我拿到很多代码却无法运行呢
- 4、数据结构JAVA 版,比较两个顺序表相等。2-5题 不会!!!!(*・ω< )
数据结构c语言版和java版有什么不同
数据结构本身是一种逻辑上的概念,它是独立于特定语言或者实现的
比如说链表,概念上说就是一组结点构成的数据结构,其中每个结点均带有后续结点信息。各种语言都可以实现链表,但实现的思路都是基于上面的逻辑概念。
因此,学习数据结构不必拘泥于某种特定语言,归根结底是要把握每个数据结构(逻辑上)的精髓
在这个基础上,每种语言都可以实现特定的数据结构,差别只在于语法实现级别。
另外虽然Java/C++等语言都带有大量的标准类库,但这并不意味着可以忽视数据结构基础理论的学习。这直接关系到实际应用时,是只能死板套用现成模板,还是灵活应用各种结构高效实现需求。
数据结构求解素数环问题(JAVA版):将N个自然数(1~N),使得每相邻两数之和为素数,构成一个素数环!
嗯。想一下。
这个是分别以每个自然数为起点,开始遍历,结果会有重复。
比如
(1, 2, 3, 4, 7, 10, 9, 8, 5, 6)
(6, 1, 2, 3, 4, 7, 10, 9, 8, 5)
import java.util.ArrayList;
import java.util.List;
public class PrimeRing {
// 求1~n素数环
public PrimeRing(int n) {
ListInteger src = new ArrayListInteger();
ListInteger dest = new ArrayListInteger();
for (int i = 1; i = n; i++) {
src.add(i);
}
loop(src, dest, n);
}
public void loop(ListInteger src, ListInteger dest, int n) {
if (dest.size() == n) {
Integer start = dest.get(0);
Integer end = dest.get(dest.size() - 1);
if (isPrime(start + end)) {
System.out.println(dest);
}
return;
}
for (int i = 0; i src.size(); i++) {
Integer element = src.remove(i);
if (dest.isEmpty()) {
dest.add(element);
} else {
Integer tmp = dest.get(dest.size() - 1);
if (isPrime(tmp + element)) {
dest.add(element);
} else {
src.add(i, element);
continue;
}
}
loop(src, dest, n);
src.add(i, element);
dest.remove(dest.size() - 1);
}
}
// 判断k是否为素数
public boolean isPrime(int k) {
if (k == 2)
return true;
if (k 2 || k 2 k % 2 == 0)
return false;
int j = (int) Math.sqrt(k); // Math.sqrt(k)返回k的平方根值
if (j % 2 == 0)
j--; // 获得测试范围内的最大奇数
while (j 2 k % j != 0)
j -= 2;
return j 2;
}
public static void main(String args[]) {
new PrimeRing(10);
}
}
学习数据结构(java版)是否需要什么环境设置,为什么我拿到很多代码却无法运行呢
首先你是不是安装了jdk呢?这是java运行需要的环境,你可以到网上找的下,然后你对环境配置,具体我给你个实例你自己看看
第一步:下载jdk
第二步:安装和配置你的jdk:执行jdk的安装程序,然后设置按照路径进行安装即可。
安装jdk以后,需要配置一下环境变量,在我的电脑-属性-高级-环境变量-系统变量中添加以下环境变量(假定你的jdk安装在c:\jdk1.6):
JAVA_HOME=c:\jdk1.6
classpath=. ;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(.;一定不能少,因为它代表当前路径)
path=%JAVA_HOME%\bin
接着可以写一个简单的java程序来测试JDK是否已安装成功:
public class Test{
public static void main(String args[]){
System.out.println("HelloWorld.");
}
}
将上面的这段程序保存为文件名为Test.java的文件。
然后打开命令提示符窗口,输入命令cd C:\Documents and Settings\Administrator\桌面(就是cd 加上test文件的存放位置)到你的Test.java所在目录,然后键入下面的命令
javac Test.java
编译成功后再输入:
java Test
此时如果看到打印出来This is a test program.的话说明安装成功了,如果没有打印出这句话,你需要仔细检查一下你的配置情况。
数据结构JAVA 版,比较两个顺序表相等。2-5题 不会!!!!(*・ω< )
顺序表element的数据结构是数组
判断数组是否相等不应该使用 == , 而是应该逐元素遍历判断相等
JDK提供了工具类Arrays.equals(arr1,arr2) 可以快速判断数组是否相等(内部就是循环遍历判断) 以int数组为例:
public static boolean equals(int[] a, int[] a2) {
if (a==a2)
return true;
if (a==null || a2==null)
return false;
int length = a.length;
if (a2.length != length)
return false;
for (int i=0; ilength; i++)
if (a[i] != a2[i])
return false;
return true;
}
另: equals不是java的关键字, 只是Object对象的方法, 题干中方法明显是重写了equals方法,并没有错误
关于数据结构笔记java版和java基本数据结构的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-12-27,除非注明,否则均为
原创文章,转载请注明出处。