Compare commits

2 Commits

Author SHA1 Message Date
Libkyy
d6a1f874c0 LinkedList cleanup 2022-06-03 09:35:43 +02:00
Linly
59ae9a425b Merge pull request #1 from LinlyBoi/Section
BonsaiTree is PAINJNNNNNNNNN
2022-06-03 09:17:49 +02:00
2 changed files with 48 additions and 59 deletions

View File

@@ -1,92 +1,79 @@
package ScuffedLinkedList;
public class linkedlist {
public class linkedlist
{
public node head;
public node tail;
public int size;
<<<<<<< HEAD
linkedlist()
{
size = 0;
=======
linkedlist() {
size = -1;
>>>>>>> aae40d7982df045ed4b77fc7a23e6e6ebb893eb7
}
linkedlist(int value) {
linkedlist(int value)
{
node inserted = new node(value);
this.head = inserted;
this.tail = inserted;
<<<<<<< HEAD
size = 1;
=======
head.prev = tail;
tail.next = head;
size = 1;
size = 0;
>>>>>>> aae40d7982df045ed4b77fc7a23e6e6ebb893eb7
}
public node getNode(int index) {
if (index == 0)
return head;
<<<<<<< HEAD
else if(index == size-1)
return tail;
else if(index > size/2)
public node getNode(int index)
{
node current = tail;
for(int count = size-1; count > index; count--)
current = current.prev;
return current;
}
else if(index <= size/2)
{
=======
else if (index == size)
return tail;
if (index == 0) return head;
else if (index == size - 1) return tail;
else
{
>>>>>>> aae40d7982df045ed4b77fc7a23e6e6ebb893eb7
node current = head;
for (int count = 0; count < index-1; count++)
for (int i = 0; i < index; i++)
{
current = current.next;
}
return current;
}
}
public void add(int value, int index) {
if (index == 0) {
public void add(int value, int index)
{
if (index == 0)
{
addFirst(value);
} else if (index == size) {
} else if (index == size)
{
addLast(value);
}
else {
} else
{
node inserted = new node(value);
node target = getNode(index);
target.prev.next = inserted;
inserted.prev = target.prev;
inserted.next = target;
target.prev = inserted;
inserted.next = target.next;
inserted.prev = target;
target.next = inserted;
}
size++;
}
}
public void addLast(int value) {
public void addLast(int value)
{
node inserted = new node(value);
@@ -99,7 +86,8 @@ public class linkedlist {
size++;
}
public void addFirst(int value) {
public void addFirst(int value)
{
node target = head;
node inserted = new node(value);
@@ -113,20 +101,20 @@ public class linkedlist {
}
public void delete(int index) {
public void delete(int index)
{
node target = getNode(index);
node prev, next;
prev = target.prev;
next = target.next;
if (prev == tail)
head = next;
if (prev == tail) head = next;
else if (next == head)
tail = prev;
else if (next == head) tail = prev;
else {
else
{
prev.next = next;
next.prev = prev;
}
@@ -136,10 +124,10 @@ public class linkedlist {
public void spin2()
{
int count = 0;
while(count != 2)
while (count != 2)
{
node temp = head;
while(temp.next != head)
while (temp.next != head)
{
System.out.print(temp + " ");
temp = temp.next;
@@ -147,13 +135,14 @@ public class linkedlist {
count++;
}
}
public void backwards()
{
int count = 0;
while(count != 2)
while (count != 2)
{
node temp = tail;
while(temp.prev != tail)
while (temp.prev != tail)
{
System.out.print(temp + " ");
temp = temp.prev;

View File

@@ -14,9 +14,9 @@ class linkedlistTest
L1.add(49,0);
assertEquals(2,L1.size);
assertEquals(50, L1.getNode(2).getValue());
assertEquals(50, L1.getNode(3).getValue());
L1.add(30,1);
assertEquals(30, L1.getNode(2).getValue());
assertEquals(30, L1.getNode(1).getValue());
}