in the c programming language.
List *init()
{
head = ( List * ) malloc( sizeof( List ) );
if ( head == NULL ) {
prtError( "Insufficient memory!" );
return( NULL );
}
head->data = -1;
head->next = NULL;
tail = head;
return ( head );
}
/* Insert a new data element d into the list. */
/* Insert at the front of the list, right behind the dummy node. */
/* Return NULL if a new node cannot be created. */
/* Otherwise, return the pointer to the newly created node. */
List *insertFirst( int d )
{
/***** ADD YOUR CODE HERE *****/
}
/* Insert a new data element d into the list. */
/* Insert at the end of the list. */
/* Return NULL if a new node cannot be created. */
/* Otherwise, return the pointer to the newly created node. */
List *insertLast( int d )
{
/***** ADD YOUR CODE HERE *****/
}
/* Remove the first element of the list, i.e., the node right behind the dummy node. */
/* Return -1 if the list is empty, i.e., containing only the dummy node, */
/* and display error message "Empty list!" on the standard output. */
/* Otherwise, return the data (integer) of the node to be remove. */
int removeFirst()
{
/***** ADD YOUR CODE HERE *****/
}
/* Search the list for an element containing integer k. */
/* If found, return the pointer to that element. Otherwise, return NULL. */
/* If there is more than one element containing k, return the pointer to the first encountered element. */
List *search( int k )
{
/***** ADD YOUR CODE HERE *****/
}
#include<stdio.h>
#include<stdlib.h>// for using malloc()
// define the structure for node
struct List {
struct List * next ;
int data;
};
struct List * head = NULL ;
struct List *init(){;
head = ( struct List * ) malloc( sizeof( struct List ) );
if ( head == NULL ) {
printf( "Insufficient memory!" );
return( NULL );
}
head->data = -1;
head->next = NULL;
return ( head );
}
/* Insert a new data element d into the list. */
/* Insert at the front of the list, right behind the dummy node. */
/* Return NULL if a new node cannot be created. */
/* Otherwise, return the pointer to the newly created node. */
struct List *insertFirst( int d )
{ //create new node
struct List * newNode = (struct List * ) malloc( sizeof( struct
List ) );
// if node cannot be created
if ( newNode == NULL ) {
printf( "Node cannot be created " );
return( NULL );
}
else //attach the newley created node
newNode->data = d ;
head->next = newNode;
newNode->next = NULL;
return head ;
}
/* Insert a new data element d into the list. */
/* Insert at the end of the list. */
/* Return NULL if a new node cannot be created. */
/* Otherwise, return the pointer to the newly created node. */
struct List *insertLast( int d )
{//create a node
struct List * lNode = NULL ;
lNode = ( struct List * ) malloc( sizeof( struct List ) );
if ( lNode == NULL ) {
printf( "Insufficient memory!" );
return( NULL );
}
else // find the current last node
{
struct List * curr = head ;
while(curr->next != NULL)// to reach to the last node
{
curr = curr->next ;
}
// you are currently at the last node
curr->next = lNode ;// attach created node at the last
//assign value to this node
lNode->data = d ;
return head;
}
}
/* Remove the first element of the list, i.e., the node right
behind the dummy node. */
/* Return -1 if the list is empty, i.e., containing only the dummy node, */
/* and display error message "Empty list!" on the standard output. */
/* Otherwise, return the data (integer) of the node to be remove. */
int removeFirst(){
if( head== NULL )
printf("Empty list ");
else
{
struct List* list = head ->next ;//list is pointing to right of
dummy node
int value = list->data ;
head->next = head->next->next ;
free(list);
return value;
}
}
/* Search the list for an element containing integer k. */
/* If found, return the pointer to that element. Otherwise, return NULL. */
/* If there is more than one element containing k, return the pointer to the first encountered element. */
struct List *search( int k )
{
struct List * list= head ;
while( list != NULL )
{
if( list->data = k)
return list;
}
printf("Element not found in the List ");
return NULL ;
}
// program to print element of linked list
void print_list( struct List * head ){
struct List *parse = head ;
while( parse != NULL )
{
printf( "%d \t " , parse->data);
parse = parse->next ;
}
printf("\n");
}
int main(){
struct List * head = init();
insertFirst(3);
insertLast(4);
printf("current list elements :\n");
print_list(head);
removeFirst(head);
printf("current list elements after calling removeFirst
:\n");
print_list(head);
printf("let insert more elements using insertLast:\n");
insertLast(9);
insertLast(5);
print_list(head);}

in the c programming language. List *init() { head = ( List * ) malloc( sizeof(...
could somone please help me to complete this ! public class MyLinkedList<AnyType> { private Node<AnyType> head, tail; private int size; public MyLinkedList() { this.head = null; this.tail = null; this.size = 0; } //1.Insert a node at the end of the list public void insert(AnyType data) { Node<AnyType> newNode = new Node(); newNode.data = data; if (head == null) { head = newNode; tail = newNode; head.next = null; tail.next = null; } else { tail.next = newNode; tail =...
c++ please Change InsertLast to be used on a double linked list instead of a single linked list. Use prev as the other pointer name. bool LinkedList::InsertLast(int v) { if(size == 0) { return InsertFirst(v); } Node *tmp = new Node; if(tmp == NULL) return false; tmp->value=v; last->next=tmp; last = tmp; size++; if(size == 1){ first = last; } return true; }
Working in C++, Complete the code. // Lab 9 code /* Insert leading comments with your name and the date. Describe the purpose of the code. Also, list each pointer and describe how it is used to enable the selection sort for the linked list structure. */ /* Insert code as described by the comments. */ /* Add comments to each line of code that uses a pointer, describing how it is being used. */ #include <iostream> using namespace std;...
C++: I need implement this code using Double Linked List using the cosiderations 1. head point to null in an empty list 2. There is not need of a tail pointer /*This class implements the singly linked list using templates Each list has two attributes: -head: first node in the list -tail: last node in the list #include "circDLLNode.h" template class { public: //Default constructor: creates an empty list (); //Destructor: deallocate memory ~(); ...
Complete LinkedListSet.java in java programming language. package Homework3; public class LinkedListSet extends LinkedListCollection { LinkedListSet() { } public boolean add(T element) { // Code here return true; } } Below is the LinkedListCollection.java code. Use to complete LinkedListSet.java. public class LinkedListCollection <T> { protected Node<T> head = null; public LinkedListCollection() { } public boolean isEmpty() { return head == null; } public int size() { int counter = 0; Node<T> cursor = head; while (cursor != null) { cursor =...
Programming in C: I am trying to modify this linked list to be doubly linked list. I’m also trying to add a print in reverse function. I’m really struggling with how to change the insert function to doubly link the nodes without effecting the alphabetical sorting mechanism. Example of desired output: Enter your choice: 1 to insert an element into the list. 2 to delete an element from the list. 3 to end. ? 1 Enter a character: a The...
Java Programming: The following is my code: public class KWSingleLinkedList<E> { public void setSize(int size) { this.size = size; } /** Reference to list head. */ private Node<E> head = null; /** The number of items in the list */ private int size = 0; /** Add an item to the front of the list. @param item The item to be added */ public void addFirst(E...
C++ Assignment Project 1 - NodeList Building upon the the ListNode/List code I would like you to extend the interface of a list to have these member functions as well. struct ListNode { int element; ListNode *next; } Write a function to concatenate two linked lists. Given lists l1 = (2, 3, 1)and l2 = (4, 5), after return from l1.concatenate(l2)the list l1should be changed to be l1 = (2, 3, 1, 4, 5). Your function should not change l2and...
Given a singly-linked list interface and linked list node class, implement the singly-linked list which has the following methods in Java: 1. Implement 3 add() methods. One will add to the front (must be O(1)), one will add to the back (must be O(1)), and one will add anywhere in the list according to given index (must be O(1) for index 0 and O(n) for all other indices). They are: void addAtIndex(int index, T data), void addToFront(T data), void addToBack(T...
C++ Assignment Project 1 - NodeList Building upon the the ListNode/List code I would like you to extend the interface of a list to have these member functions as well. struct ListNode { int element; ListNode *next; } Write a function to concatenate two linked lists. Given lists l1 = (2, 3, 1)and l2 = (4, 5), after return from l1.concatenate(l2)the list l1should be changed to be l1 = (2, 3, 1, 4, 5). Your function should not change l2and...