nt
6
Notifications
You have no notifications
See all
Course Overview
SECTIONS
Welcome to Data Structures
1
Week 1: Preparing Background
2
Week 2: Exercise and Course Project
3
Week 3: Discussion on Link-List
4
Week 4: Adaptive Lesson on Link-List
5
Week 5: Review discussion on Link-List
6
Week 6: Discussion on Stack Applications
7
Week 8: Discussion on Tree Data Structure
8
Week 9: Discussion on Binary Search Tree (BST)
9
Week 10: Discussion on Heap
10
Week 11: Discussion on Graph
11
Week 12: Review Discussion
12
Skip to main content
Data Structure and Lab
Dashboard
My courses
CSE134/135-MA
Week 1: Preparing Background
Discussion Forum (Week 1)
Answer the question and discuss if you have any confusion
Search
1
1
Discussion Forum (Week 1)
Answer the question and discuss if you have any confusion
Display mode
Display replies in nested form
Picture of Md Assaduzzaman
Answer the question and discuss if you have any confusion
by Md Assaduzzaman - Thursday, 24 September 2020, 10:55 PM
Number of replies: 23
Q1. List the name of the topic you have learned this week in this course?
Q2. Why data structure is important in computer science?
Q3. Write down the real life application of tree, graph ,stack, queue.
Write your reply...
Picture of Md. Atikur Rahman
In reply to Md Assaduzzaman
Re: Answer the question and discuss if you have any confusion
by Md. Atikur Rahman - Friday, 25 September 2020, 12:26 AM
Picture of DS-(PC-F)
Question to the answer no 1:
In my last class I was learned about Linked list, stack and queue.
A linked list is a linear data structure, in which the elements are not stored at contiguous memory locations. In simple words, a linked list consists of nodes where each node contains a data field and a reference(link) to the next node in the list.
Stack is a container of objects that are inserted and removed according to the last-in first-out (LIFO) principle.
Queue is a container of objects (a linear collection) that are inserted and removed according to the first-in first-out (FIFO) principle.
Question to the answer no 2:
With increasing complexities in computer algorithms, the amount of data usage is increasing, this can affect the performance of the application and can create some areas of concern:
• Processing speed: To handle very large data, high-speed processing is required, but with growing data processor may fail to archive required processing speed.
• Data Search: Getting a particular record from database should be quick and with optimum use of
resources.
• Multiple requests: To handle simultanous requests from multiple users
Data Structure Advantages
• Efficient Memory use: With efficient use of data structure memory usage can be optimized, for e.g we can use linked list vs arrays when we are not sure about the size of data. When there is no more use of memory, it can be released.
• Reusability: Data structures can be reused, i.e. once we have implemented a particular data structure, we can use it at any other place. Implementation of data structures can be compiled into libraries which can be used by different clients.
• Abstraction: Data structure serves as the basis of abstract data types, the data structure defines the physical form of ADT(Abstract Data Type). ADT is theoretical and Data structure gives physical form to them.
All of those point shows the importance of Data Structure in computer science and engineering field.
Question to the answer no 3:
The real time application of tree, graph, stack and queue in data structure:
Now, i am gonna write some real life applications and by real life i mean applications of the data structures in your daily routine.
Tree : We must've used our windows task manager,when we right click on the name of some currently running application you'd have seen that there's a option to end the process tree ,it shuts down not only that application but all the child applications of that root application which we want to shut down,so the windows basically forms a tree of processes that are related to that application and makes that app the root.Trees are also used in DBMS ,we are really gotta know how to deal with them while working with database management system.
Graph : Graphs have many applications not only in computer science but in other fields too.graphs are used in game theory ,artificial intelligence,computer networks and in genetic algorithms.
Stack : Stack plays a crucial part in designing a operating systems.
Queue : In our smartphone we must've used some music apps like saavn,wynk and music player which our mobile has and we also have maintained a playlist of our favourite songs ,well thats when the queue come in but there are some modifications in that but the main idea comes from the queues only.
Picture of ABU BAKAR SIDDIQUE 201-15-3352
In reply to Md Assaduzzaman
Re: Answer the question and discuss if you have any confusion
by ABU BAKAR SIDDIQUE 201-15-3352 - Friday, 25 September 2020, 9:35 AM
Picture of DS-(PC-F)
1)Ans:
In my last class I was learned about Linked list, stack and queue.
2)Ans:
Data Structure is the combination of data objects which gives a way of collecting and handling data in the computer so that it can be used. Their various types are arrays, Linked List, Stack, Queue, etc. Data Structures are used extensively in nearly every aspect of Computer Science for simple as well as complex calculations. They are practiced in all such areas such as AI, Graphics, Operating System, etc.
Data Structures are a crucial part of several computer algorithms as they allow programmers to do data management efficiently. A wise selection of data structures can improve the performance of a computer program or algorithm in a more useful way.
1. Handling complexity:
Increase in complexities in computer algorithms, the volume of data usage is rising; this can affect the execution of the application and can create remarkable areas of concern like processing speed, data search, and multiple requests. To counter these data structures are used.
2. Systematic memory use:
Systematic application of data structure memory usage can be optimized, e.g., we can use linked list vs. arrays when we are not particular about the data size. When there is no longer use of memory, it can be cleared.
3. Ability to reuse:
Once we have executed a particular data structure, we can reuse it in any distinct position. Implementation of data structures can be assembled into libraries that can be utilized by various clients.
4. Abstraction:
Data structure acts as the foundation of abstract data types; the data structure describes the physical form of Abstract Data Type. In ADT, the set of operations is supposed to be understood, and the data structure provides physicality to them.
Data structures are the integral constituent of any programming language or complex computations. Mostly, structured data structures are crucial to designing efficient algorithms.
3)Ans:
The real time application of tree, graph, stack and queue in data structure.Now i will write in detail all the real time application.
Tree:
Trees are hierarchical structures having a single root node.Some applications of the trees are:
1.XML Parser uses tree algorithms.
Decision-based algorithm is used in machine learning which works upon the algorithm of tree.
2.Databases also uses tree data structures for indexing.
3.Domain Name Server(DNS) also uses tree structures.
Graph:
Graph is a data structure where data is stored in a collection of interconnected vertices (nodes) and edges (paths).Some applications of a graph are:
1.Facebook’s Graph API uses the structure of Graphs.
2.Google’s Knowledge Graph also has to do something with Graph.
3.Dijkstra algorithm or the shortest path first algorithm also uses graph structure to finding the smallest path between the nodes of the graph.
4.GPS navigation system also uses shortest path APIs.
Stack:
A stack is a data structure which uses LIFO order.Some Applications of a stack are:
1.Converting infix to postfix expressions.
Undo operation is also carried out through stacks.
2.Syntaxes in languages are parsed using stacks.
3.It is used in many virtual machines like JVM.
Queue:
A queue is a data structure which uses FIFO order.Some applications of a queue are:
1.Operating System uses queue for job scheduling.
2.To handle congestion in networking queue can be used.
3.Data packets in communication are arranged in queue format.
Picture of Md.Yeasin Chowdhury 201-15-3443
In reply to Md Assaduzzaman
Re: Answer the question and discuss if you have any confusion
by Md.Yeasin Chowdhury 201-15-3443 - Friday, 25 September 2020, 10:32 AM
Picture of DS-(PC-F)
Answer : 01
In this week i have learn about Linked list, stack and queue. In computer science, a linked list is a linear collection of data elements whose order is not given by their physical placement in memory.
Stack is a container of objects that are inserted and removed according to the last-in first-out (LIFO)principle.
Queue is a container of objects (a linear collection) that are inserted and removed according to the first-in first-out (FIFO) principle.
Answer : 02
It is axiom that data structures base of computer science. It is actual computer science.Data structures are like hands for algorithms to make recipe. Using combination of data structure and algorithms, we can improve performance of program drastically. For example, you are using any searching algorithm like binary search, then set data structure would be perfect rather than array. The reason is, set is much better for checking whether element is present in specified place or not. This is actually not a quite good example but it can tell you the actual need of data structure in algorithms. Data Structures teach you how computer stores the data in memory so that it can be retrieved, updated, stored in a faster manner. A coding problem that is solvable using Polynomial Time without using appropriate data structure, can be solved in linear time it data is stored in an appropriate data structure.
Answer : 03
I am going to write about the real time application of tree, graph ,stack, queue.
Graphs : They are a tool to model a problem. It just unbelievable at the diversity of problems that we can solve using graphs. Its applications vary from Google Search to Facebook Feeds to Image Segmentation. It is a separate field in its own (Graph Theory) and listing its applications would just limit its scope.
Tree : Trees are a form of graph. Application of trees can be found in implementing complex data-structures for 1. Search (Binary Search Trees, Tries, Red-Black Trees etc etc) 2. Range Max/Min Queries (Segment Trees , Binary Index Trees , Heaps) 3. String Analysis Data Structures like Suffix Tries. These are just a few from the vast ocean.
Queue: This is like a basic tool for everything. From adhoc uses, to multi-threaded Synchronization , to Graph Algorithms … everywhere we will find them. Some primary ones are Producer-Consumer Problem.
Stack: These are also found everywhere. Stack is used internally by system in implementing recursions and maintaining process states. Some prime uses are Expression Evaluation and DFS.
Picture of Ismotara Dipty
In reply to Md Assaduzzaman
Re: Answer the question and discuss if you have any confusion
by Ismotara Dipty - Friday, 25 September 2020, 11:00 AM
Picture of DS-(PC-F)
Answer to the question no 1:
In my last class I was learned about Linked list, stack and queue.
Answer to the question no 2:
Data Structure can be defined as the collection of data objects which provides a way of storing and managing data in the computer so that it can be used. Data Structures are the key part of many computer algorithms as they allow the programmers to do data management in an efficient way. Data structure is important in computer science because of,
Preparing speed: To deal with extremely huge information, fast handling is required, yet with developing information processor may neglect to achive required handling speed.
Information Search: Getting a specific record from data set ought to be speedy and with ideal utilization of assets.
Productive Memory use: With effective utilization of information structure memory use can be upgraded, for e.g we can utilize connected rundown versus exhibits when we don't know about the size of information. When there is no more utilization of memory, it very well may be delivered.
Reusability: Data structures can be reused, for example when we have actualized a specific information structure, we can utilize it at some other spot. Execution of information structures can be ordered into libraries which can be utilized by various customers.
Reflection: Data structure fills in as the premise of theoretical information types, the information structure characterizes the physical type of ADT(Abstract Data Type). ADT is hypothetical and Data structure gives physical structure to them.
Answer to the question no 3:
The real time application of tree, graph, stack and queue in data structure:
Tree: Information bases utilizes tree information structures for indexing.Domain Name Server additionally utilizes tree structures.Binary Space Partition are utilized in pretty much every 3D computer game to figure out what articles should be rendered.Binary Tries are utilized in pretty much every high-data transmission switch for putting away switch tables.
Graph: Graphs are used to represent data organization. Graph theory is used to find shortest path in road or a network. In Google Maps, various locations are represented as vertices or nodes and the roads are represented as edges and graph theory is used to find the shortest path between two nodes.In physics and chemistry, graph theory is used to study molecules.
Stack: The stack can be used to convert some infix expression into its postfix equivalent, or prefix equivalent. These postfix or prefix notations are used in computers to express some expressions. These expressions are not so much familiar to the infix expression, but they have some great advantages also. We do not need to maintain operator ordering, and parenthesis.Backtracking is one of the algorithm designing technique. Another great use of stack is during the function call and return process.
Queue: Queue is used when things don't have to be processed immediately, but have to be processed in First In First Out order like Breadth First Search. Serving requests on a single shared resource, like a printer, CPU task scheduling etc. In real life scenario, Call Center phone systems uses Queues to hold people calling them in an order, until a service representative is free. Handling of interrupts in real-time systems.
Picture of Mohammad Ashikuzzaman
In reply to Md Assaduzzaman
Discussion Forum :-Week 1
by Mohammad Ashikuzzaman - Friday, 25 September 2020, 11:56 AM
Picture of DS-(PC-F)
Answer to the question no - 1 :-
In my last class I was learned about Linked list, stack and queue.
Answer to the question no - 2 :-
It is aphorism that information structures base of software engineering. It is genuine PC science. Data structures resemble hands for calculations to make formula. Utilizing mix of information structure and calculations, we can improve execution of program radically. For instance, you are utilizing any looking through calculation like double hunt, at that point set information structure would be immaculate instead of cluster. The explanation is, set is vastly improved for checking whether component is available in indicated place or not. This is really not a very genuine model but rather it can reveal to you the real need of information structure in calculations. Information Structures show you how PC stores the information in memory with the goal that it very well may be recovered, refreshed, put away in a quicker way. A coding issue that is reasonable utilizing Polynomial Time without utilizing fitting information structure, can be illuminated in straight time it information is put away in a suitable information structure.
Answer to the question no - 3 :-
The ongoing use of tree, chart, stack and line in information structure:
Presently, I am going to keep in touch with some genuine applications and by genuine I mean uses of the information structures in your every day schedule.
Tree :- We must've utilized our windows task manager, when we right snap on the name of some as of now running application you'd have seen that there's a choice to end the cycle tree ,it closes down that application as well as all the kid uses of that root application which we need to close down, so the windows essentially shapes a tree of cycles that are identified with that application and makes that application the root. Trees are additionally utilized in DBMS ,we are truly gotten realize how to manage them while functioning with information base administration framework.
Graph :- Graphs have numerous applications in software engineering as well as in different fields too. Graphs are utilized in game hypothesis ,fake intelligence, computer networks and in hereditary calculations.
Stack :- Stack has a urgent influence in planning a working frameworks.
Queue :- In our cell phone we must've utilized some music applications like savant, wink and music player which our portable has and we likewise have kept up a playlist of our main tunes ,well that is the point at which the line come in however there are a few adjustments in that yet the principle thought originates from the lines as it were.
Picture of Sumia Sarower Trisha 201-15-3474
In reply to Md Assaduzzaman
Re: Answer the question and discuss if you have any confusion
by Sumia Sarower Trisha 201-15-3474 - Friday, 25 September 2020, 12:22 PM
Picture of DS-(PC-F)
Answer to the question no.1
In my last class I have learned about Linked list, stack and queue.
Answer to the question no.2
Data Structure is the combination of data objects which gives a way of collecting and handling data in the computer so that it can be used. Their various types are arrays, Linked List, Stack, Queue, etc. Data Structures are used extensively in nearly every aspect of Computer Science for simple as well as complex calculations. They are practiced in all such areas such as AI, Graphics, Operating System, etc.
Data Structures are a crucial part of several computer algorithms as they allow programmers to do data management efficiently. A wise selection of data structures can improve the performance of a computer program or algorithm in a more useful way. Increase in complexities in computer algorithms, the volume of data usage is rising; this can affect the execution of the application and can create remarkable areas of concern like processing speed, data search, and multiple requests. To counter these data structures are used. Systematic application of data structure memory usage can be optimized, e.g., we can use linked list vs. arrays when we are not particular about the data size. When there is no longer use of memory, it can be cleared. Once we have executed a particular data structure, we can reuse it in any distinct position. Implementation of data structures can be assembled into libraries that can be utilized by various clients. Data structure acts as the foundation of abstract data types; the data structure describes the physical form of Abstract Data Type. In ADT, the set of operations is supposed to be understood, and the data structure provides physicality to them.
Answer to the question no.3
The real time application of tree, graph, stack and queue in data structure:
Tree: Information bases utilizes tree information structures for indexing.Domain Name Server additionally utilizes tree structures.Binary Space Partition are utilized in pretty much every 3D computer game to figure out what articles should be rendered.Binary Tries are utilized in pretty much every high-data transmission switch for putting away switch tables.
Graph: Graphs are used to represent data organization. Graph theory is used to find shortest path in road or a network. In Google Maps, various locations are represented as vertices or nodes and the roads are represented as edges and graph theory is used to find the shortest path between two nodes.In physics and chemistry, graph theory is used to study molecules.
Stack: The stack can be used to convert some infix expression into its postfix equivalent, or prefix equivalent. These postfix or prefix notations are used in computers to express some expressions. These expressions are not so much familiar to the infix expression, but they have some great advantages also. We do not need to maintain operator ordering, and parenthesis.Backtracking is one of the algorithm designing technique. Another great use of stack is during the function call and return process.
Queue: Queue is used when things don't have to be processed immediately, but have to be processed in First In First Out order like Breadth First Search. Serving requests on a single shared resource, like a printer, CPU task scheduling etc. In real life scenario, Call Center phone systems uses Queues to hold people calling them in an order, until a service representative is free. Handling of interrupts in real-time systems.
Picture of Arif Hosen
In reply to Md Assaduzzaman
Re: Answer the question and discuss if you have any confusion
by Arif Hosen - Friday, 25 September 2020, 1:18 PM
Picture of DS-(PC-F)
Answer to the Question No. 1
I have learned about Linked list, Stack and Queue in this week.
Answer to the Question No. 2
Data structure is a particular way of storing and organizing information in a computer so that it can be retrieved and used most productively. Different kinds of data structures are meant for different kinds of applications, and some are highly specialized to specific tasks. Data structures are important for the following reasons:
1. Data structures are used in almost every program or software system.
2. Specific data structures are essential ingredients of many efficient algorithms, and make possible the management of huge amounts of data, such as large integrated collection of databases.
3. Some programming languages emphasize data structures, rather than algorithms, as the key organizing factor in software design.
Answer to the Question No. 3
The real time application of tree, graph, stack and queue in data structure:
Tree: It is used in many search applications where data is constantly entering or leaving, such as the map and set objects in many languages’ libraries. It is also used in almost every high-bandwidth router for storing router-tables and every 3D video game to determine what objects need to be rendered. Domain Name Server uses tree structures and databases also uses tree data structures for indexing.
Graph: Google maps uses graphs for building transportation systems, where intersection of two (or more) roads are considered to be a vertex and the road connecting two vertices is considered to be an edge, thus their navigation system is based on the algorithm to calculate the shortest path between two vertices. In Facebook, users are considered to be the vertices and if they are friends then there is an edge running between them. Facebook’s Friend suggestion algorithm uses graph theory. Facebook is an example of undirected graph.
Stack: The stack can be used to convert infix to postfix expressions and undo operation is also carried out through stacks. It can be also used to process syntaxes of language and it is used in many virtual machines like JVM.
Queue: It is used to handle congestion in networking. Call center phone systems uses queues to hold people calling them in an order, until a service representative is free and Operating System uses queue for job scheduling.