Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit a4005c1

Browse files
author
Ram swaroop
committed
insert in sorted circular list: done
1 parent 1019bed commit a4005c1

15 files changed

+71
-14
lines changed

src/me/ramswaroop/linkedlists/CloneWithRandPointers.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
* @time: 1:00 PM
1212
* @see: http://www.geeksforgeeks.org/a-linked-list-with-next-and-arbit-pointer/
1313
*/
14-
public class CloneWithRandPointers<E extends Comparable<E>> extends DoubleLinkedList<E> {
14+
public class CloneWithRandPointers {
1515

1616
/**
1717
* Clones a linked list with next pointer pointing to the

src/me/ramswaroop/linkedlists/DeleteAlternateNodes.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
* @date: 6/27/15
1111
* @time: 5:27 PM
1212
*/
13-
public class DeleteAlternateNodes<E extends Comparable<E>> extends SingleLinkedList<E> {
13+
public class DeleteAlternateNodes {
1414

1515
public static <E extends Comparable<E>> void deleteAlternateNodes(SingleLinkedList<E> list) {
1616
deleteAlternateNodes(list.head);

src/me/ramswaroop/linkedlists/DeleteNode.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
* @date: 6/18/15
1111
* @time: 2:35 PM
1212
*/
13-
public class DeleteNode<E extends Comparable<E>> extends SingleLinkedList<E> {
13+
public class DeleteNode {
1414

1515
/**
1616
* Given a pointer to a node, delete it.

src/me/ramswaroop/linkedlists/DetectLoop.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
* @date: 6/19/15
1313
* @time: 9:24 AM
1414
*/
15-
public class DetectLoop<E extends Comparable<E>> extends SingleLinkedList<E> {
15+
public class DetectLoop {
1616

1717
/**
1818
* Uses Flyod's Cycle Finding algorithm.
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
package me.ramswaroop.linkedlists;
2+
3+
import me.ramswaroop.common.CircularSingleLinkedList;
4+
import me.ramswaroop.common.SingleLinkedNode;
5+
6+
/**
7+
* Created by IntelliJ IDEA.
8+
*
9+
* @author: ramswaroop
10+
* @date: 6/29/15
11+
* @time: 6:16 PM
12+
*/
13+
public class InsertInSortedCircularLinkedList<E extends Comparable<E>> extends CircularSingleLinkedList<E> {
14+
15+
/**
16+
* Inserts an element in the sorted circular
17+
* linked list maintaining the sorted property.
18+
*
19+
* @param item
20+
*/
21+
public void insert(E item) {
22+
SingleLinkedNode<E> node = head, curr = node;
23+
24+
do {
25+
if (node.item.compareTo(item) > 0) { // new node is to be inserted before head
26+
// last node should now point to the new head
27+
while (curr.next != head) {
28+
curr = curr.next;
29+
}
30+
head = new SingleLinkedNode<>(item, node);
31+
curr.next = head;
32+
return;
33+
} else if (node.next.item.compareTo(item) > 0) {
34+
node.next = new SingleLinkedNode<>(item, node.next);
35+
return;
36+
} else if (node.next == head) {
37+
node.next = new SingleLinkedNode<>(item, head);
38+
return;
39+
}
40+
node = node.next;
41+
} while (node != head);
42+
}
43+
44+
public static void main(String a[]) {
45+
InsertInSortedCircularLinkedList<Integer> linkedList = new InsertInSortedCircularLinkedList<>();
46+
linkedList.add(00);
47+
linkedList.add(11);
48+
linkedList.add(22);
49+
linkedList.add(33);
50+
linkedList.printList();
51+
linkedList.insert(-2);
52+
linkedList.insert(9);
53+
linkedList.insert(44);
54+
linkedList.printList();
55+
}
56+
}

src/me/ramswaroop/linkedlists/InsertInSortedList.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@
1313
public class InsertInSortedList<E extends Comparable<E>> extends SingleLinkedList<E> {
1414

1515
/**
16-
* Insert an element in the sorted linked list.
16+
* Inserts an element in the sorted linked
17+
* list maintaining the sorted property.
1718
*
1819
* @param item
1920
*/

src/me/ramswaroop/linkedlists/IntersectionOf2SortedLists.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
* @date: 6/27/15
1111
* @time: 11:13 AM
1212
*/
13-
public class IntersectionOf2SortedLists<E extends Comparable<E>> extends SingleLinkedList<E> {
13+
public class IntersectionOf2SortedLists {
1414

1515
/**
1616
* Returns a linked list with elements common in

src/me/ramswaroop/linkedlists/IntersectionOfTwoLists.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
* @date: 6/18/15
1111
* @time: 10:34 PM
1212
*/
13-
public class IntersectionOfTwoLists<E extends Comparable<E>> extends SingleLinkedList<E> {
13+
public class IntersectionOfTwoLists {
1414

1515

1616
/**

src/me/ramswaroop/linkedlists/IsIdentical.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
* @date: 6/29/15
1111
* @time: 9:42 AM
1212
*/
13-
public class IsIdentical<E extends Comparable<E>> extends SingleLinkedList<E> {
13+
public class IsIdentical {
1414

1515
/**
1616
* Returns {@code true} if linked list {@param list1} and {@param list2}

src/me/ramswaroop/linkedlists/MergeTwoSortedLists.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
* @date: 6/27/15
1111
* @time: 8:47 PM
1212
*/
13-
public class MergeTwoSortedLists<E extends Comparable<E>> extends SingleLinkedList<E> {
13+
public class MergeTwoSortedLists {
1414

1515
/**
1616
* Merges two sorted list {@param list1} and {@param list2} into

src/me/ramswaroop/linkedlists/MiddleNode.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
* @date: 6/18/15
1111
* @time: 10:34 PM
1212
*/
13-
public class MiddleNode<E extends Comparable<E>> extends SingleLinkedList<E> {
13+
public class MiddleNode {
1414

1515
public static <E extends Comparable<E>> SingleLinkedNode<E> getMiddleNode(SingleLinkedList<E> list) {
1616
SingleLinkedNode<E> slow = list.getNode(0);

src/me/ramswaroop/linkedlists/MoveLastNodeToFirst.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
* @date: 6/23/15
1111
* @time: 7:52 PM
1212
*/
13-
public class MoveLastNodeToFirst<E extends Comparable<E>> extends SingleLinkedList<E> {
13+
public class MoveLastNodeToFirst {
1414

1515
public static <E extends Comparable<E>> void moveLastNodeToFirst(SingleLinkedList<E> list) {
1616
if (list.size <= 1) return;

src/me/ramswaroop/linkedlists/NthNodeFromLast.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
* @date: 6/18/15
1111
* @time: 6:49 PM
1212
*/
13-
public class NthNodeFromLast<E extends Comparable<E>> extends SingleLinkedList<E> {
13+
public class NthNodeFromLast {
1414

1515
public static <E extends Comparable<E>> SingleLinkedNode<E> getNthNodeFromLast(SingleLinkedList<E> list, int n) {
1616
SingleLinkedNode<E> slow = list.getNode(0);

src/me/ramswaroop/linkedlists/RemoveDuplicates.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* @date: 6/18/15
1414
* @time: 2:35 PM
1515
*/
16-
public class RemoveDuplicates<E extends Comparable<E>> extends SingleLinkedList<E> {
16+
public class RemoveDuplicates {
1717

1818
/**
1919
* Removes duplicates from a sorted linked list

src/me/ramswaroop/linkedlists/ReverseDoubleLinkedList.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
* @date: 6/19/15
1111
* @time: 9:24 AM
1212
*/
13-
public class ReverseDoubleLinkedList<E extends Comparable<E>> extends DoubleLinkedList<E> {
13+
public class ReverseDoubleLinkedList {
1414

1515
/**
1616
* Reverses the doubly linked list.

0 commit comments

Comments
 (0)