Advanced topics in C core concepts in data structures /

C is the most widely used programming language of all time. It has been used to create almost every category of software imaginable and the list keeps growing every day. Cutting-edge applications, such as Arduino, embeddable and wearable computing are ready-made for C. "Advanced Topics In C&quo...

Full description

Main Author: Kalicharan, Noel,
Other Authors: SpringerLink (Online service)
Format: eBook
Language: English
Published: [Berkeley, CA] : Apress, 2013.
Distributed to the Book trade worldwide by Springer.
Physical Description: 1 online resource (312 pages).
Series: Expert's voice in C.
Subjects:
LEADER 11067cam a2200961 i 4500
001 869743906
003 OCoLC
005 20240329122006.0
006 m o d
007 cr cnu|||unuuu
008 140203s2013 cau ob 001 0 eng d
019 |a 868040670  |a 868921127  |a 869567175  |a 871223935  |a 878127597  |a 961544632  |a 1026426060  |a 1058444222  |a 1065648313  |a 1066582122  |a 1067185645  |a 1086459330  |a 1097127778  |a 1111040956  |a 1112538651  |a 1162338887  |a 1295602085  |a 1300683839  |a 1303297874 
020 |a 9781430264019  |q (electronic bk.) 
020 |a 1430264012  |q (electronic bk.) 
020 |z 9781430264002 
020 |z 1430264004 
024 7 |a 10.1007/978-1-4302-6401-9  |2 doi 
035 |a (OCoLC)869743906  |z (OCoLC)868040670  |z (OCoLC)868921127  |z (OCoLC)869567175  |z (OCoLC)871223935  |z (OCoLC)878127597  |z (OCoLC)961544632  |z (OCoLC)1026426060  |z (OCoLC)1058444222  |z (OCoLC)1065648313  |z (OCoLC)1066582122  |z (OCoLC)1067185645  |z (OCoLC)1086459330  |z (OCoLC)1097127778  |z (OCoLC)1111040956  |z (OCoLC)1112538651  |z (OCoLC)1162338887  |z (OCoLC)1295602085  |z (OCoLC)1300683839  |z (OCoLC)1303297874 
037 |a CL0500000370  |b Safari Books Online 
040 |a GW5XE  |b eng  |e rda  |e pn  |c GW5XE  |d NUI  |d OCLCO  |d UMI  |d YDXCP  |d COO  |d DEBBG  |d DEBSZ  |d GGVRL  |d OCLCF  |d E7B  |d B24X7  |d OCLCO  |d IDEBK  |d THCMU  |d EBLCP  |d OCLCQ  |d OCL  |d OCLCQ  |d VT2  |d Z5A  |d LIV  |d MERUC  |d OCLCQ  |d ESU  |d OCLCQ  |d N$T  |d REB  |d VLB  |d IOG  |d CEF  |d INT  |d U3W  |d AU@  |d OCLCQ  |d WYU  |d DEHBZ  |d UWO  |d TKN  |d OCLCQ  |d UAB  |d UKAHL  |d OCLCQ  |d DCT  |d ERF  |d OCLCQ  |d OCLCO  |d DKU  |d DST  |d OCLCO  |d OCL  |d OCLCQ  |d OCLCO  |d OCLCQ 
049 |a COM6 
050 4 |a QA76.73.C15 
066 |c (S 
072 7 |a COM  |x 051060  |2 bisacsh 
072 7 |a UY  |2 bicssc 
082 0 4 |a 005.13/3  |2 23 
100 1 |a Kalicharan, Noel,  |e author. 
245 1 0 |a Advanced topics in C :  |b core concepts in data structures /  |c Noel Kalicharan. 
264 1 |a [Berkeley, CA] :  |b Apress,  |c 2013. 
264 2 |a New York, NY :  |b Distributed to the Book trade worldwide by Springer. 
264 4 |c ©2013. 
300 |a 1 online resource (312 pages). 
336 |a text  |b txt  |2 rdacontent. 
337 |a computer  |b c  |2 rdamedia. 
338 |a online resource  |b cr  |2 rdacarrier. 
347 |b PDF. 
347 |a text file. 
490 1 |a The expert's voice in C. 
588 0 |a Online resource; title from PDF title page (EBSCO, viewed November 30, 2017). 
520 |a C is the most widely used programming language of all time. It has been used to create almost every category of software imaginable and the list keeps growing every day. Cutting-edge applications, such as Arduino, embeddable and wearable computing are ready-made for C. "Advanced Topics In C" teaches concepts that any budding programmer should know. You'll delve into topics such as sorting, searching, merging, recursion, random numbers and simulation, among others. You will increase the range of problems you can solve when you learn how to manipulate versatile and popular data structures such as binary trees and hash tables. This book assumes you have a working knowledge of basic programming concepts such as variables, constants, assignment, selection (if.else) and looping (while, for). It also assumes you are comfortable with writing functions and working with arrays. If you study this book carefully and do the exercises conscientiously, you would become a better and more agile programmer, more prepared to code today's applications (such as the Internet of Things) in C. 
504 |a Includes bibliographical references and index. 
505 0 |6 880-01  |a Chapter 1. Sorting, searching, and merging -- chapter 2. Structures -- chapter 3. Pointers -- chapter 4. Linked lists -- chapter 5. Stacks and queues -- chapter 6. Recursion -- chapter 7. Random numbers, games, and simulation -- chapter 8. Working with files -- chapter 9. Introduction to binary trees -- chapter 10. Advanced sorting -- chapter 11. Hashing. 
546 |a English. 
650 0 |a C (Computer program language) 
650 0 |a Software engineering. 
650 1 0 |a Computer science. 
650 2 0 |a Computer science. 
650 6 |a Génie logiciel. 
650 6 |a C (Langage de programmation) 
650 7 |a COMPUTERS  |x Programming Languages  |x C.  |2 bisacsh. 
650 7 |a Software engineering.  |2 fast. 
650 7 |a C (Computer program language)  |2 fast. 
655 0 |a Electronic books. 
710 2 |a SpringerLink (Online service) 
776 0 8 |i Printed edition:  |z 9781430264002. 
830 0 |a Expert's voice in C. 
880 0 0 |6 505-01/(S  |g Machine generated contents note:  |g 1.1.  |t Sorting an Array: Selection Sort --  |g 1.1.1.  |t Analysis of Selection Sort --  |g 1.2.  |t Sorting an Array: Insertion Sort --  |g 1.2.1.  |t Analysis of Insertion Sort --  |g 1.3.  |t Inserting an Element in Place --  |g 1.4.  |t Sorting an Array of Strings --  |g 1.5.  |t Sorting Parallel Arrays --  |g 1.6.  |t Binary Search --  |g 1.7.  |t Searching an Array of Strings --  |g 1.8.  |t Example: Word Frequency Count --  |g 1.9.  |t Merging Ordered Lists --  |g 1.9.1.  |t Implementing the Merge --  |g 2.1.  |t Defining Structures --  |g 2.2.  |t How to Declare a Structure --  |g 2.2.1.  |t typedef --  |g 2.3.  |t Working with an Array of Structures --  |g 2.4.  |t Searching an Array of Structures --  |g 2.5.  |t Sorting an Array of Structures --  |g 2.6.  |t How to Read, Search, and Sort a Structure --  |g 2.7.  |t Nested Structures --  |g 2.8.  |t Working with Fractions --  |g 2.8.1.  |t Manipulating Fractions --  |g 2.9.  |t Voting Problem --  |g 2.10.  |t Passing Structures to Functions --  |g 3.1.  |t Defining Pointers --  |g 3.2.  |t Passing Pointers as Arguments --  |g 3.3.  |t More on Passing an Array as an Argument --  |g 3.4.  |t Character Pointers --  |g 3.5.  |t Pointer Arithmetic --  |g 3.6.  |t Pointers to Structures --  |g 3.7.  |t Pointers to Functions --  |g 3.8.  |t Void Pointers --  |g 4.1.  |t Defining Linked Lists --  |g 4.2.  |t Basic Operations on a Linked List --  |g 4.2.1.  |t Counting the Nodes in a Linked List --  |g 4.2.2.  |t Searching a Linked List --  |g 4.2.3.  |t Finding the Last Node in a Linked List --  |g 4.3.  |t Dynamic Storage Allocation: malloc, calloc, sizeof, free --  |g 4.3.1.  |t malloc --  |g 4.3.2.  |t calloc --  |g 4.3.3.  |t sizeof --  |g 4.3.4.  |t free --  |g 4.4.  |t Building a Linked List: Adding New Item at the Tail : --  |g 4.5.  |t Insertion into a Linked List --  |g 4.6.  |t Building a Linked List: Adding a New Item at the Head --  |g 4.7.  |t Deletion from a Linked List --  |g 4.8.  |t Building a Sorted Linked List --  |g 4.9.  |t Example: Palindrome --  |g 4.10.  |t Saving a Linked List --  |g 4.11.  |t Arrays vs. Linked Lists --  |g 4.12.  |t Storing a Linked List Using Arrays --  |g 4.13.  |t Merging Two Sorted Linked Lists --  |g 4.14.  |t Circular and Two-Way Linked Lists --  |g 4.14.1.  |t Circular Lists --  |g 4.14.2.  |t Two-Way (Doubly Linked) Lists --  |g 5.1.  |t Abstract Data Types --  |g 5.2.  |t Stacks --  |g 5.2.1.  |t Implementing a Stack Using an Array --  |g 5.2.2.  |t Implementing a Stack Using a Linked List --  |g 5.3.  |t Creating a Stack Header File --  |g 5.4.  |t General Stack Type --  |g 5.4.1.  |t Example: Convert from Decimal to Binary --  |g 5.5.  |t Converting Infix to Postfix --  |g 5.5.1.  |t Evaluating a Postfix Expression --  |g 5.6.  |t Queues --  |g 5.6.1.  |t Implementing a Queue Using an Array --  |g 5.6.2.  |t Implementing a Queue Using a Linked List --  |g 6.1.  |t Recursive Definition --  |g 6.2.  |t Writing Recursive Functions in C --  |g 6.3.  |t Converting a Decimal Number to Binary Using Recursion --  |g 6.4.  |t Printing a Linked List in Reverse Order --  |g 6.5.  |t Towers of Hanoi --  |g 6.6.  |t Writing Power Functions --  |g 6.7.  |t Merge Sort --  |g 6.8.  |t static Variables --  |g 6.8.1.  |t Internal Static --  |g 6.8.2.  |t External Static --  |g 6.9.  |t Counting Organisms --  |g 6.10.  |t Finding a Path Through a Maze --  |g 6.10.1.  |t Writing the Program --  |g 7.1.  |t Random Numbers --  |g 7.2.  |t Random and Pseudorandom Numbers --  |g 7.3.  |t Generating Random Numbers by Computer --  |g 7.4.  |t Guessing Game --  |g 7.5.  |t Drills in Addition --  |g 7.6.  |t Nim --  |g 7.7.  |t Non-uniform Distributions --  |g 7.7.1.  |t Collecting Bottle Caps --  |g 7.8.  |t Simulation of Real-Life Problems --  |g 7.9.  |t Simulating a Queue --  |g 7.9.1.  |t Programming the Simulation --  |g 7.10.  |t Estimating Numerical Values Using Random Numbers --  |g 7.10.1.  |t Estimating square root of 5 --  |g 7.10.2.  |t Estimating s --  |g 8.1.  |t Reading Data from a File --  |g 8.1.1.  |t fscanf --  |g 8.1.2.  |t Finding the Average of Some Numbers in a File --  |g 8.2.  |t Sending Output to a File --  |g 8.2.1.  |t fprintf --  |g 8.3.  |t Text and Binary Files --  |g 8.4.  |t Internal vs. External File Name --  |g 8.5.  |t fopen and fclose --  |g 8.6.  |t getc and putc --  |g 8.7.  |t feof and ferror --  |g 8.8.  |t fgets and fputs --  |g 8.8.1.  |t Example: Comparing Two Files --  |g 8.9.  |t Input/Output for Binary File --  |g 8.9.1.  |t fread and fwrite --  |g 8.10.  |t Random Access Files --  |g 8.10.1.  |t rewind and fseek --  |g 8.11.  |t Indexed Files --  |g 8.12.  |t Updating a Random Access File --  |g 9.1.  |t Trees --  |g 9.2.  |t Binary Trees --  |g 9.3.  |t Traversing a Binary Tree --  |g 9.4.  |t Representing a Binary Tree --  |g 9.5.  |t Building a Binary Tree --  |g 9.6.  |t Binary Search Trees --  |g 9.7.  |t Building a Binary Search Tree --  |g 9.7.1.  |t Example: Word Frequency Count --  |g 9.8.  |t Array as a Binary Tree Representation --  |g 9.9.  |t Some Useful Binary Tree Functions --  |g 9.10.  |t Binary Search Tree Deletion --  |g 10.1.  |t Heapsort --  |g 10.1.1.  |t Converting a Binary Tree into a Max-Heap --  |g 10.1.2.  |t Sorting Process --  |g 10.2.  |t Building a Heap Using siftUp --  |g 10.3.  |t Analysis of Heapsort --  |g 10.4.  |t Heaps and Priority Queues --  |g 10.5.  |t Sorting a List of Items with Quicksort --  |g 10.5.1.  |t Another Way to Partition --  |g 10.5.2.  |t Nonrecursive Quicksort --  |g 10.5.3.  |t Finding the kth Smallest Number --  |g 10.6.  |t Shell (Diminishing Increment) Sort --  |g 11.1.  |t Hashing Fundamentals --  |g 11.1.1.  |t Search and Insert Problem --  |g 11.2.  |t Solving the Search and Insert Problem by Hashing --  |g 11.2.1.  |t Hash Function --  |g 11.2.2.  |t Deleting an Item from a Hash Table --  |g 11.3.  |t Resolving Collisions --  |g 11.3.1.  |t Linear Probing --  |g 11.3.2.  |t Quadratic Probing --  |g 11.3.3.  |t Chaining --  |g 11.3.4.  |t Linear Probing with Double Hashing --  |g 11.4.  |t Example: Word Frequency Count. 
907 |a .b41783268  |b multi  |c -  |d 140304  |e 240516 
998 |a (3)cue  |a cu  |b 240404  |c m  |d z   |e -  |f eng  |g cau  |h 0  |i 2 
948 |a MARCIVE Overnight, in 2024.04 
948 |a MARCIVE Comp, in 2022.12 
948 |a MARCIVE Over, 07/2021 
948 |a MARCIVE Comp, 2020.06 
948 |a MARCIVE Comp, 2019.12 
948 |a MARCIVE Comp, 2018.05 
948 |a MARCIVE August, 2017 
948 |a MARCIVE extract Aug 5, 2017 
994 |a 92  |b COM 
995 |a Loaded with m2btab.ltiac in 2024.04 
995 |a Loaded with m2btab.elec in 2024.04 
995 |a Loaded with m2btab.ltiac in 2022.12 
995 |a Loaded with m2btab.ltiac in 2021.07 
995 |a Loaded with m2btab.elec in 2021.06 
995 |a Loaded with m2btab.ltiac in 2020.06 
995 |a Loaded with m2btab.ltiac in 2019.12 
995 |a Loaded with m2btab.ltiac in 2018.06 
995 |a Loaded with m2btab.ltiac in 2017.08 
995 |a Loaded with m2btab.elec in 2016 
995 |a Loaded with m2btab.elec in 2016 
995 |a OCLC offline update by CMU 
999 |e z 
999 |a cue 
989 |d cueme  |e  - -   |f  - -   |g -   |h 0  |i 0  |j 200  |k 240404  |l $0.00  |m    |n  - -   |o -  |p 0  |q 0  |t 0  |x 0  |w SpringerLink  |1 .i151402577  |u http://ezproxy.coloradomesa.edu/login?url=https://link.springer.com/10.1007/978-1-4302-6401-9  |3 SpringerLink  |z Click here for access