Segregate even and odd nodes in sorted order in scala

Scala program for Segregate even and odd nodes in sorted order. Here problem description and other solutions.

``````// Scala program for
// Segregate even and odd nodes in ascending order
{
def this(data: Int)
{
this(data, null);
}
}
{
def this()
{
this(null);
}
def insert(value: Int): Unit = {
// Create a node
{
}
else
{
// Find last node
while (temp.next != null)
{
// Visit to next node
temp = temp.next;
}
// Add node at last position
temp.next = node;
}
}
// Display all Linked List elements
def display(): Unit = {
{
while (temp != null)
{
// Display node value
print("  " + temp.data);
// Visit to next node
temp = temp.next;
}
}
else
{
}
}
{
}
{
}
else
{
// Finding location of inserting node
while (temp.next != null &&
temp.next.data < element.data)
{
// Visit to next node
temp = temp.next;
}
element.next = temp.next;
temp.next = element;
}
}
def segregateNode(odd: SingleLL,
even: SingleLL): Unit = {
// Iterating the linked list node
{
// Visit to next node
// Set null to next node
node.next = null;
if (node.data % 2 == 0)
{
// When node value is Even
}
else
{
// When node value is Odd
}
}
}
}
object Main
{
def main(args: Array[String]): Unit = {
var sll: SingleLL = new SingleLL();
var odd: SingleLL = new SingleLL();
var even: SingleLL = new SingleLL();
// 4 → 3 → 5 → 2 → 11 → 1 → 6 → NULL
sll.insert(4);
sll.insert(3);
sll.insert(5);
sll.insert(2);
sll.insert(11);
sll.insert(1);
sll.insert(6);
println("Initial Element");
// Display all node
sll.display();
sll.segregateNode(odd, even);
println("\nEven Element");
// Display all even node
even.display();
println("\nOdd Element");
// Display all odd node
odd.display();
}
}``````

Output

``````Initial Element
4  3  5  2  11  1  6
Even Element
2  4  6
Odd Element
1  3  5  11``````

Comment

Please share your knowledge to improve code and content standard. Also submit your doubts, and test case. We improve by your feedback. We will try to resolve your query as soon as possible.