Professional Documents
Culture Documents
I. INTRODUCTION
A. Data Structure
The data structure used in the creation of Model A is a
linked list. The linked list is a linear collection of data
elements. The data elements are referred to as nodes of the
linked list. Each node has two parts. One part is called the data
field, which stores data related to that node and the other part
called the pointer field, contains a reference to the other nodes
of the list. Depending on the type of linked list, the nodes can
have one or more data and pointer fields in them. Two such Fig. 2: Sample Multi-Linked List
types of linked lists are explained below: In the above multi-linked list, each node has two data fields
and two pointer fields. The d11, d12, d21, d22, d31, d32, d41, d42
Singly Linked List: The simplest type of linked list is the are the data fields and the p11, p12, p21, p22, p31, p32, p41, p42 are
singly linked list. In a singly linked list, every node has only the pointer fields.
one data field for storing data and only one pointer field for The representation of a node of the above multi-linked list
storing the reference to another node of the list. is as follows:
struct node
{
Fig. 1: Sample Singly Linked List int data1, data2;
struct node *next1,
Every linked list contains a pointer variable START that *next2;
stores the address of the first node of the list. If the START = };
NULL, then the list is empty, i.e. it does not contain any Here, „data1‟ and „data2‟ variables store data of the node,
nodes. The last node of the list does not point to any other and the „*next1‟ and „*next2‟ variables, are pointers of the
node, so its pointer is assigned the value NULL and is node, that point to other nodes of similar type.
represented as „X‟. The d1, d2, d3, d4 are the data fields and the Advantages of linked lists: Insertion and deletion of
p1, p2, p3 are the pointers. elements (nodes) in a linked list are easy and efficient tasks
The general representation of a node of a singly linked list than as compared to that in an array. This is because in an
is as follows: array we shift the data in its memory locations to add or
remove elements, but in a linked list, we can just update the
address stored by the pointers of the nodes. Linked lists offer
efficient memory utilization. In an array, if some memory is
allocated, it cannot be de-allocated from the array whereas, in
Revised Manuscript Received on April 25, 2019. a linked list, allocation and de-allocation of memory can be
Shivam Hareshkumar Patel, UG Student, Department of Computer
Science and Engineering, SRM Institute of Science and Technology, done at any time. Also, linked lists are dynamic data
Kattankulathur, Chennai, Tamil Nadu, India. E-mail: structures, i.e. they can grow or shrink efficiently during the
shivam.patel1606@gmail.com execution of the program.
A. Jackulin Mahariba, Assistant Professor (Senior Grade), Department
of Computer Science and Engineering, SRM Institute of Science and
Technology, Kattankulathur, Chennai, Tamil Nadu, India. E-mail:
jackulin.a@ktr.srmuniv.ac.in
Published By:
Retrieval Number: D10050484S219/2019©BEIESP Blue Eyes Intelligence Engineering
DOI: 10.35940/ijeat.D1005.0484S219 12 and Sciences Publication
Word Search Puzzle using Multi-Linked Lists
Disadvantages of linked lists: Since the nodes of a linked Finally, when both the above conditions return true, it puts the
list do not have an index assigned to them like in arrays, it is word at that position. The application as described in [17] was
difficult to locate nodes in some linked list than in an array. In meant only for demonstration purposes which creates a matrix
a linked list, if the nth node was to be accessed, it is necessary of 13 X 17. It tries to place the list of given words randomly
to traverse through all the (n-1) nodes that appear before it. while seeking for the optimal result for up to one minute,
Thus, the time required to access a node is too large. Further, which is not optimizing. The word search generator/solver
node or element traversal in a linked list is difficult, unlike in described in [18], proposes four types of grids of alphabets.
an array where we can easily traverse it using the indexes. For This model is constructed using arrays which has a function
traversing through the linked list, a lot of alterations in the defined to check whether a word can be inserted in the grid or
addresses stored in the pointers are required, which consumes not at the denoted position and if it returns true, it inserts the
a lot of time. word in to the grid using a different function. The model
proposed in [19] can form grids of the word search puzzle, of
II. LITERATURE REVIEW greater sizes efficiently as compared to the other models
The work done by V. R. Kanagavalli et al. [1] proposes the described above. So, we have kept this model [19], as a
reference model to compare its efficiency with that of Model
effective utilization of data structures in the area of
A. The model described in [19] will now be referred as Model
information retrieval. Đorđe Stojisavljević et al. [2] depicts
B, for better understanding.
the implementation of multi-linked lists in C++ by elaborating
on the object-oriented concepts of multi-linked lists. Li-Bing
III. PROPOSED WORK
Wu et al. [3] suggests an improved data structure called
„tacked list‟ to enhance the advanced resource reservation A. Approach
mechanism in high-performance networks and distributed The grid that we created for Model A, was made using
systems. Đorđe Stojisavljević et al. [4] proposes a way to multi-linked list data structure, and each node of that model
improve on the traditional methods of accessing data using had one data field and three pointer fields. A sample node of
multi-linked lists. Vossoughi Hossein et al. [7] proposed the our model is shown in Fig. 3. In the figure, d1 is the data field
results of word search puzzle game in vocabulary of the node and p11, p12, p13 are the pointer fields of the node.
development of 60 female students of a language institute in The pointer fields either point to similar nodes of the model or
Semnan. Falley. P [9] detects the differences and similarities they store a NULL value, if they do not point to any other
in the three categories formed after grouping the different data nodes. Each data field stores an alphabetical letter as required
structures. The categories proposed in [9] were Storage by the model (puzzle). The general representation of a node of
Structures (linked lists, arrays and hash tables), Process- our model is as follows:
struct node
Oriented Data Structures (queues, priority queues, stacks
{
and iterators) and, Descriptive Data Structures (binary trees,
char DATA;
sets, collections, etc.). Jeremy Lee Graybill [11] has struct node *RIGHT; struct node *BOTTOM; struct node
researched an integration of word scramble, trivia puzzle, *CROSS;
word-link and word-search puzzle games. Charles William };
Ditter [12] proposed a model for a three-dimensional word- The „DATA‟ variable stores the data of the node, i.e. and
search puzzle game. Burston Jack [13] suggested the alphabetical letter and „RIGHT‟, „BOTTOM‟ and „CROSS‟
essential role of possessing a good vocabulary in learning a are the pointer variables of the node. The pointer variables if
foreign or a second language and how crossword puzzles help pointing to some node, store the address of similar nodes, else
in the same. Parlante N. [14] presented the basic and essential if they do not point to any node then they store a NULL
techniques to construct a linked list and in [15], he proposes value. Comparing with Fig. 3, d1 is the DATA field, p11
and explains 18 practice problems related to linked lists. represents the RIGHT pointer, p12 represents the CROSS
Morin [5] thoroughly described the working of various data pointer and p13 represents the BOTTOM pointer of the node.
structures on strings. Reema Thareja [6] has detailed the A sample 4 x 4 grid of our model is shown in Fig. 4. It shows
concepts regarding the use of various data structures. It a connection of 16 single nodes, each node of the form as
provided a major help to us in formatting the algorithm that described in Fig. 3. A few nodes have pointer fields storing
was developed for our model. Tanenbaum A. et al. [8] have NULL value because they do not point to any other nodes.
described the use of the numerous data structures using C and
C++. Kenneth A. Reek [10] has clearly explained the use to
pointers in C.
The model proposed in [16] uses integers to represent the
English alphabets. It has a fixed number of words that can be
added to the puzzle grid and also it has assigned a fixed length Fig. 3: Single Node of Model A
for each of those words, which implies that the number of
In the next sub-section under proposed work, we have
words and their length cannot be assigned in runtime. The
described the algorithms for the construction of our model.
crossword generator proposed in [17] uses C# and Visual
Studio 2010 for its development. For each word to be placed
in some position in the grid, it checks if it is a valid position
followed by checking whether it can be placed at that position.
Published By:
Retrieval Number: D10050484S219/2019©BEIESP Blue Eyes Intelligence Engineering
DOI: 10.35940/ijeat.D1005.0484S219 13 and Sciences Publication
International Journal of Engineering and Advanced Technology (IJEAT)
ISSN: 2249 – 8958, Volume-8 Issue-4S2, April 2019
Published By:
Retrieval Number: D10050484S219/2019©BEIESP Blue Eyes Intelligence Engineering
DOI: 10.35940/ijeat.D1005.0484S219 14 and Sciences Publication
Word Search Puzzle using Multi-Linked Lists
Published By:
Retrieval Number: D10050484S219/2019©BEIESP Blue Eyes Intelligence Engineering
DOI: 10.35940/ijeat.D1005.0484S219 15 and Sciences Publication
International Journal of Engineering and Advanced Technology (IJEAT)
ISSN: 2249 – 8958, Volume-8 Issue-4S2, April 2019
Fig. 8: Model A after execution of set Upper Triangular Fig. 9: Model A after execution of set Lower Triangular
Links () Links ()
Published By:
Retrieval Number: D10050484S219/2019©BEIESP Blue Eyes Intelligence Engineering
DOI: 10.35940/ijeat.D1005.0484S219 16 and Sciences Publication
Word Search Puzzle using Multi-Linked Lists
Published By:
Retrieval Number: D10050484S219/2019©BEIESP Blue Eyes Intelligence Engineering
DOI: 10.35940/ijeat.D1005.0484S219 17 and Sciences Publication
International Journal of Engineering and Advanced Technology (IJEAT)
ISSN: 2249 – 8958, Volume-8 Issue-4S2, April 2019
AUTHORS PROFILE
Shivam Hareshkumar Patel, is currently an
undergraduate senior at SRM Institute of Science and
Technology, Chennai pursuing his Bachelor of
Technology in Computer Science and Engineering.
He is interested in Data Science and Analytics,
especially its application to the field of Business
Analytics.
Published By:
Retrieval Number: D10050484S219/2019©BEIESP Blue Eyes Intelligence Engineering
DOI: 10.35940/ijeat.D1005.0484S219 18 and Sciences Publication