Please convert the code to C language   //separate chaining #include using namespace std; class node { public:     int data;     node* next;     node()     {         data = 0;         next = NULL;     }     node(int x)     {         data = x;         next = NULL;     } }; node* add(node* head, int data) {     if (head == NULL) {         head = new node(data);         return head;     }     node* temp = head;     while (temp->next) {         temp = temp->next;     }     temp->next = new node(data);     return head; } void print(node* head) {     if (!head) {         cout << "NULL\n";         return;     }     node* temp = head;     while (temp) {         cout << temp->data << "->";         temp = temp->next;     }     cout << "NULL\n"; } int main() {     //set of input numbers     vector arr{ 123, 456, 763, 656, 908, 238, 231 };     //initialize the hash table     //each entry of the hash table is a linkedlist     vector hash(10); //size of hashtable is 10     //using hash function f(x)=no of digits in x     for (int a : arr) {         hash[a % 10] = add(hash[a % 10], a);     }     cout << "Hash table is:\n";     for (int i = 0; i < 10; i++) {         cout << i << "---- ";         print(hash[i]);     }     return 0; }   Output:

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

Please convert the code to C language

 

//separate chaining
#include <bits/stdc++.h>
using namespace std;

class node {
public:
    int data;
    node* next;

    node()
    {
        data = 0;
        next = NULL;
    }
    node(int x)
    {
        data = x;
        next = NULL;
    }
};

node* add(node* head, int data)
{
    if (head == NULL) {
        head = new node(data);
        return head;
    }

    node* temp = head;
    while (temp->next) {
        temp = temp->next;
    }
    temp->next = new node(data);
    return head;
}

void print(node* head)
{

    if (!head) {
        cout << "NULL\n";
        return;
    }
    node* temp = head;
    while (temp) {
        cout << temp->data << "->";
        temp = temp->next;
    }
    cout << "NULL\n";
}

int main()
{
    //set of input numbers
    vector<int> arr{ 123, 456, 763, 656, 908, 238, 231 };

    //initialize the hash table
    //each entry of the hash table is a linkedlist
    vector<node*> hash(10); //size of hashtable is 10

    //using hash function f(x)=no of digits in x
    for (int a : arr) {
        hash[a % 10] = add(hash[a % 10], a);
    }

    cout << "Hash table is:\n";
    for (int i = 0; i < 10; i++) {
        cout << i << "---- ";
        print(hash[i]);
    }

    return 0;
}

 

Output:

 

Hash table is:
0--
NULL
1--
231->NULL
2---- NULL
3---- 123->763->NULL
4---- NULL
5---- NULL
6---- 456->656->NULL
7---- NULL
8---- 908->238->NULL
9---- NULL
Transcribed Image Text:Hash table is: 0-- NULL 1-- 231->NULL 2---- NULL 3---- 123->763->NULL 4---- NULL 5---- NULL 6---- 456->656->NULL 7---- NULL 8---- 908->238->NULL 9---- NULL
Expert Solution
steps

Step by step

Solved in 3 steps with 3 images

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY