Free Downloads
Data Structures In C

Revised April 2015 Update of link to source code The short code link in the book no longer works. The code can be accessed here: https://onedrive.live.com/redir?resid=8ACA1678C859BCF7!278&authkey=!AAMYL7b58wzbeBM&ithint=folder%2cin Data structures is concerned with the storage, representation and manipulation of data in a computer. We discuss some of the more versatile and popular data structures and explain how to implement and use them to solve a variety of useful problems. The book restricts itself to what can be covered in a one-semester course, without overwhelming the student with complexity and analysis. The approach is practical rather than theoretical. We show how to implement the data structures and operations on them using C. Here's what readers have to say about Data Structures In C: "It is second to none in terms of clarity, conciseness, choice of topics, coverage, layout, and even price and production value. All the usual linear, tree, and graph data structures and algorithms are covered, all striking the right balance between abstraction and detail." "This book has to be probably the best 'first book' I've ever come across for anyone who wants to learn data structures!" "The author makes everything very easy to understand." "It is written very simply yet effectively with great code examples." "The book is well written, and the chapters are very well organized." "The simplicity and the way that this book teach the basics I think makes it the best first book on Data Structures." "All computer science students who wish to grasp a good understanding of these topics in the quickest of time, this it the book for you." "Kalicharan makes everything as simple as possible, but not simpler. Simplicity and crystal clarity are his trademark...It is about helping you to understand Data Structures and, for me, it is simply the best book for doing that." "The author seems to have a knack for boiling the topic down to its barest essentials and explaining those ideas in a way that makes it easy (and actually fun) to understand." "All the major data structure types are so well presented that it is difficult to find any other book(s) or website(s) which explains them better." "It has the best description of pointers (one of the pitfalls for C beginners) I have ever read." "Unlike other C books, Kalicharan gives a brilliant discussion of pointers."

Paperback: 330 pages

Publisher: CreateSpace Independent Publishing Platform; 1 edition (August 11, 2008)

Language: English

ISBN-10: 1438253273

ISBN-13: 978-1438253275

Product Dimensions: 8 x 0.8 x 10 inches

Shipping Weight: 1.8 pounds (View shipping rates and policies)

Average Customer Review: 4.2 out of 5 stars  See all reviews (18 customer reviews)

Best Sellers Rank: #189,127 in Books (See Top 100 in Books) #22 in Books > Computers & Technology > Programming > Algorithms > Data Structures #79 in Books > Computers & Technology > Programming > Languages & Tools > C & C++ > C #738 in Books > Textbooks > Computer Science > Programming Languages

After some thought, I decided to change the rating of the book from 5 stars to 4.First, the good:The book is fairly well contained, and offers a complete introduction to data structures. The first two chapters review struct declarations and pointers in C. The rest of the book covers linked lists, stacks, queues, hash tables, matrices, trees, graphs, and sorting. The book is well written, and the chapters are very well organized. As with every technical subject, rereading a section once or twice will probably be necessary. But once it sinks in, it is a fantastic feeling! I think that the problems at the end of the chapter are extremely valuable. Some problems are simple drills, but others will require you to apply what you learned to solve real life problems. Some require you to come up with your own algorithms. In one problem, the author guides the reader toward making a "big number" library that can handle arbitrarily large integers. I found this problem particularly enlightening, and I felt very accomplished upon its completion.Now, for the bad:In my opinion, the author's coding style is a little sloppy. My biggest issue is that he doesn't emphasize the release of dynamically allocated memory. For example, in chapter 4, he includes the complete code needed to implement a stack data structure. However, he doesn't mention anything about creating a function that will release the dynamic memory. This occurs consistently in chapter 5, too. This book is meant to appeal to beginners, and beginners are especially likely to create memory leaks. The author should have addressed this issue.Secondly, a lot of the book's source code assumes that arrays start out with an index of 1. In C, of course, all array elements start with 0.

The only way for me to describe Professor Kalicharan's style of writing and teaching is the following quote attributed to Albert Einstein: "Make everything as simple as possible, but not simpler". Simplicity and (crystal) clarity are his trademark. He just wants you to understand. But he won't dumb down the subject, nor he will get over wordy. He will just use the right explanation, the one that you will remember, and he will describe every step for you so you don't get lost. He will point out what's important; he will make you understand.The book is only 300 pages long but after reading it you will be able to pick up any other book on data structures (whatever the programming language used) and say "The explanation was clearer in Professor Kalicharan's book".The code is simple and clear, you can actually remember it, think about it and play with it - things you can't do with a Data Structures book using OOP where the implementation of the simplest data structure takes at least two pages. Who needs OOP to learn about linked lists, trees or graph? In my opinion OOP takes the fun out learning Data Structures. In this book you will find:StructuresPointersLinked listsStacks and queuesBinary treesSorting (selection sort, insertion sort, heapsort, quicksort, mergesort, Shell sort)GraphsHashingWorking with matricesTo really understand data structures you need to play with them, and to do so all you need is main() and a few others functions. All of them will happily stand in only one file. To understand data structures, to play with them you don't even need to bother yourself with "modular programming" even though the programs in the book are written using modular programming concepts.

Data Architecture: A Primer for the Data Scientist: Big Data, Data Warehouse and Data Vault Data Analytics: Practical Data Analysis and Statistical Guide to Transform and Evolve Any Business Leveraging the Power of Data Analytics, Data Science, ... (Hacking Freedom and Data Driven Book 2) Big Data For Beginners: Understanding SMART Big Data, Data Mining & Data Analytics For improved Business Performance, Life Decisions & More! The Data Revolution: Big Data, Open Data, Data Infrastructures and Their Consequences Starting Out with Java: From Control Structures through Data Structures (2nd Edition) (Gaddis Series) Java Software Structures: Designing and Using Data Structures Java Software Structures: Designing and Using Data Structures (3rd Edition) Starting Out with Java: From Control Structures through Data Structures (3rd Edition) Swift: Programming, Master's Handbook: A TRUE Beginner's Guide! Problem Solving, Code, Data Science, Data Structures & Algorithms (Code like a PRO in ... mining, software, software engineering,) Java Programming Box Set: Programming, Master's Handbook & Artificial Intelligence Made Easy; Code, Data Science, Automation, problem solving, Data Structures & Algorithms (CodeWell Box Sets) Ruby Programming Box Set: Programming, Master's Handbook & Artificial Intelligence Made Easy; Code, Data Science, Automation, problem solving, Data Structures & Algorithms (CodeWell Box Sets) Data Structures and Algorithms Made Easy: Data Structure and Algorithmic Puzzles Data Structures in Java: From Abstract Data Types to the Java Collections Framework Java Programming: Master's Handbook: A TRUE Beginner's Guide! Problem Solving, Code, Data Science, Data Structures & Algorithms (Code like a PRO in 24 ... design, tech, perl, ajax, swift, python) Data Structures and Algorithms Made Easy in Java: Data Structure and Algorithmic Puzzles Ruby: Programming, Master's Handbook: A TRUE Beginner's Guide! Problem Solving, Code, Data Science, Data Structures & Algorithms (Code like a PRO in 24 ... design, tech, perl, ajax, swift, python) Discovering Knowledge in Data: An Introduction to Data Mining (Wiley Series on Methods and Applications in Data Mining) Big Data, MapReduce, Hadoop, and Spark with Python: Master Big Data Analytics and Data Wrangling with MapReduce Fundamentals using Hadoop, Spark, and Python LEARN IN A DAY! DATA WAREHOUSING. Top Links and Resources for Learning Data Warehousing ONLINE and OFFLINE: Use these FREE and PAID resources to Learn Data Warehousing in little to no time Data Just Right: Introduction to Large-Scale Data & Analytics (Addison-Wesley Data and Analytics)