新手跪求JAVA大牛帮忙....
C语言中有单向循环链表存储结构我想问下 JAVA中有木有类似的结构?
或者说怎么用java语言实现单向循环
在线等....
java --------------------编程问答-------------------- 链表有,循环链表好像么有 --------------------编程问答--------------------
我换个问法 怎么用java实现Joseph问题.... --------------------编程问答-------------------- LinkedList? --------------------编程问答--------------------
好吧 这个好像可以... --------------------编程问答--------------------
你要自己实现应该也不难啊 --------------------编程问答-------------------- 扩展一下linkedlist,应该不难实现吧,加一个最后一个元素的判断就行了 --------------------编程问答-------------------- 估计楼主是基础知识模糊的原因。Java的链表比C语言更简洁:
class Node<T>{
Node<T> next;
T t;
}
想用Java学习数据结构,你一定要树立两条规则:
一、java中除了基本类型,其他的都是“指向堆内存连续单元"的指针类型,但没有指向栈内存中基本变量的指针(如C语言中的int *p);
如 :
Object o1=new Object();
"new Object()"在堆内存中占12个字节,而所有的指针其实都是int类型,所以o1存在于栈内存中,占4字节
二、Java中所有的传递依然是”值传递“,如:
public class ObjTest {
public static void main(String[] args) {
Object o1=new Object();
testObj(o1);
}
public static void testObj(Object obj){
System.out.println(obj.toString());
}
}
1、执行到第3行时,栈被占用4字节,堆被占用12字节,假设o1的值为A0FFFX;
2、执行到第7行时,栈又多开辟了4字节,o1把A0FFFX拷贝给obj,o1和obj都指向了同一个单元;
3、执行到第8行,obj.toString()其实相当于C语言中的obj->toString(),都遵循”先寻址,后调用“的原则;
4、执行到第9行,栈中的obj被释放。
请参考:http://bbs.csdn.net/topics/390582619 --------------------编程问答--------------------
估计楼主是基础知识模糊的原因。Java的链表比C语言更简洁:
class Node<T>{
Node<T> next;
T t;
}
想用Java学习数据结构,你一定要树立两条规则:
一、java中除了基本类型,其他的都是“指向堆内存连续单元"的指针类型,但没有指向栈内存中基本变量的指针(如C语言中的int *p);
如 :
Object o1=new Object();
"new Object()"在堆内存中占12个字节,而所有的指针其实都是int类型,所以o1存在于栈内存中,占4字节
二、Java中所有的传递依然是”值传递“,如:
public class ObjTest {
public static void main(String[] args) {
Object o1=new Object();
testObj(o1);
}
public static void testObj(Object obj){
System.out.println(obj.toString());
}
}
1、执行到第3行时,栈被占用4字节,堆被占用12字节,假设o1的值为A0FFFX;
2、执行到第7行时,栈又多开辟了4字节,o1把A0FFFX拷贝给obj,o1和obj都指向了同一个单元;
3、执行到第8行,obj.toString()其实相当于C语言中的obj->toString(),都遵循”先寻址,后调用“的原则;
4、执行到第9行,栈中的obj被释放。
请参考:http://bbs.csdn.net/topics/390582619
多谢指教 我还是在校的学生 现在自学Java中 基础是不怎么扎实 我会继续学习的... --------------------编程问答--------------------
扩展一下linkedlist,应该不难实现吧,加一个最后一个元素的判断就行了
恩恩多谢指教
补充:Java , Java相关