我试图创建一个数组或ArrayList,它包含三个独立的链表。
假设我有一个部门数组(销售、媒体、船员),每个元素都是一个循环链接的名称、标题、id和支付率。
示例:
Sales:
Node 1: Name Title ID Payrate
Mary Salesperson 1378 25.46
Node 2: Name Title ID Payrate
Mary Salesperson 1364 20.13
Media:
Node 1: Name Title ID Payrate
John Designer 563 30.50
Node 2: Name Title ID Payrate
Chris Designer 586 563
我希望能够检索到特定链表中的节点,如部门(销售)。下一步,等等。这是我当前的代码:
java prettyprint-override">public class Circle{
public static class CircularLinkedList {
private Node head = null;
private Node tail = null;
private int length;
class Node{
private Node next;
private String deptNameIn;
private String empNameIn;
private String title;
private int id;
private float payrate;
public Node(String deptNameIn, String empNameIn, String title, int id, float payrate) {
this.deptNameIn = deptNameIn;
this.empNameIn = empNameIn;
this.title = title;
this.id = id;
this.payrate = payrate;
}
}
public CircularLinkedList() {
length = 0;
}
public void insertNodeRight(String deptNameIn, String empNameIn, String title, int id, float payrate) {
Node newNode = new Node(deptNameIn, empNameIn, title, id, payrate);
if (head == null) {
head = newNode;
} else {
tail.next = newNode;
}
tail = newNode;
tail.next = head;
length++;
}
public static CircularLinkedList createCircularLinkedList() {
CircularLinkedList cll = new CircularLinkedList();
cll.insertNodeRight("Sales", "Mary", "Sales_person", 568, (float) 12.50);
cll.insertNodeRight("Sales", "Mary", "Sales_person", 589, (float) 25);
cll.insertNodeRight("Sales", "Vallerie", "Manager", 123, (float) 30);
return cll;
}
}
public static void main(String[] args) {
CircularLinkedList cll = CircularLinkedList.createCircularLinkedList();
}
}
另外还有两个旁注,我目前可以从最右边插入,但如何才能从最左边插入。另外,如何删除节点?我在网上看到的一切都显示删除一个只有一个值的节点,但我有多个值。
谢谢!
姓名、职称、id和薪资的循环链接。
另外,如何删除节点?我在网上看到的一切都显示删除一个只有一个值的节点,但我有多个值。
不,你不知道。您有一个节点对象的循环链表。您的链表由节点对象组成--而不是“多个值”。
一旦你能把你的头围绕着它,你会看到你在网上搜索“如何在Java写一个链表”时找到的成千上万的博客文章和教程都同样适用于这里。
好吧,想想看。在添加新节点“at the front”之后,head
需要指向这个新节点,而新节点的next
需要指向以前的head。
当然,长度也必须增加。它与insertnoderight
的代码完全相同,只需翻转head/tail和next/prev。
删除节点也是同样的原则。想想你的链表的头/尾指针开始是什么,它们需要变成什么,你的列表中的Next/Prev指针开始是什么,它们需要变成什么。如果你愿意,可以在纸上画出来。
一旦你搞清楚了,只需编写代码来完成你的草图;对于类似这样的练习,它很简单,您的InsertNoderight
代码说明了方法。
问题内容: 我有具有重复值的numpy 2d数组。 我正在搜索这样的数组。 输入是列表,其编号类似于列0的值。我想要的最终结果是任何形式的结果行,例如数组,列表或元组 我的代码工作正常,但似乎不是pythonic。有没有更好的多值搜索策略? 就像只进行一次查找即可获取所有值的地方。 我的真实数组很大 问题答案: 方法1: 使用- 方法2: 使用-
问题内容: 我想在Java中实现具有多个值的哈希表,即 并且将返回2倍的值。 我怎样才能做到这一点? 问题答案: 您可以改用Multimap。它在列表中为一个键保留多个值。在commons- collection 和Guava中有实现。 这类似于使用值是列表的Hashmap,但是不必显式创建列表。 自己动手做的同一示例如下所示: 请注意,您可以将Multimap用作构建器,并对其调用asMap以返
问题内容: 基本上,我所做的是为州写一个枚举,我不仅希望能够像州一样访问它们,而且还希望访问它们的缩写以及它们是否是原始殖民地。 这似乎按我预期的那样工作。我可以 对于涉及枚举的特定情况,这是执行此操作的最佳方法,还是设置和格式化此枚举的更好方法?预先感谢所有人! 问题答案: 首先,枚举方法不应大写。它们是与其他方法一样的方法,具有相同的命名约定。 其次,您所做的并不是建立枚举的最佳方法。不要为每
这里的问题是什么?。我正在尝试实现图数据结构,使用邻接列表,通过使用来自util包的集合。这里 包含一些整数的LinkedList数组。LinkedList的每个元素都包含另一个类型为:node的LinkedList。 但在编译过程中,它表示不兼容类型。如何解决这个问题?
我试图使用Laravel构建一个(稍微复杂的)订阅服务。 订阅类型为:20份早餐的早餐订阅,在注册后30天内使用。 例如,如果用户在4月1日注册早餐订阅,他可以选择任何20天,直到4月30日。 我制作了以下表格和相应的模型: 用户模型和表 订阅表和型号 订阅用户透视(?)带有软删除的表 我已经用belongsToMany关系更新了相应的模型 用户: 订阅模式 我需要帮助解决的问题1。数据库/模型结