-
Notifications
You must be signed in to change notification settings - Fork 0
/
AutoLLgeneration.c
54 lines (53 loc) · 1.57 KB
/
AutoLLgeneration.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
typedef struct node {
int data;
struct node* east;
struct node* west;
struct node* north;
} Node;
Node* createNode(int data) {
Node* newNode = (Node*) malloc(sizeof(Node));
newNode->data = data;
newNode->west = newNode->north = newNode->east = NULL;
return newNode;
}
// Function to dynamically fill the linked list with random data
void fillLinkedList( int size,Node** head, int min, int max) {
srand(time(NULL)); // seed random number generator
Node* current = *head;
for (int i = 0; i < size; i++) {
int data = min + rand() % (max - min + 1);
Node* newNode = createNode(data);
if (current == NULL) {
*head = newNode;
current = *head;
} else {
current->east = newNode;
current = current->east;
}
}
}
// Function to print the linked list
void printLinkedList(Node* head) {
Node* current = head;
while (current != NULL) {
printf("%d—-> ", current->data);
current = current->east;
}
printf("NULL\n");
}
int main() {
int size, min, max;
printf("Enter the number of data items to generate: ");
scanf("%d", &size);
printf("Enter the minimum value of the range: ");
scanf("%d", &min);
printf("Enter the maximum value of the range: ");
scanf("%d", &max);
Node* head = NULL;
fillLinkedList(size,&head, min, max); // fill the linked list with random nodes within the specified range
printLinkedList(head); // print the linked list
return 0;
}