دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
دسته بندی: برنامه نویسی: زبان های برنامه نویسی ویرایش: 1 نویسندگان: Eric Roberts سری: ISBN (شابک) : 0133454843 ناشر: سال نشر: 2012 تعداد صفحات: 975 زبان: English فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) حجم فایل: 16 مگابایت
کلمات کلیدی مربوط به کتاب برنامه نویسی انتزاع در C ++: زبان برنامه نویسی c++
در صورت تبدیل فایل کتاب Programming Abstraction in C++ به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب برنامه نویسی انتزاع در C ++ نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
این متن بازبینی عمده ای از خواننده دوره است که ما در آن استفاده کرده ایم استانفورد در چند سال گذشته هدف اولیه این بازنگری، آوردن این بود رویکردی نزدیکتر با روشی که C++ در صنعت استفاده میشود، که در به نوبه خود صدور رویکرد استنفورد برای آموزش ساختارهای داده را آسان تر می کند بخش بزرگتری از مدارس اگرچه پیش نویس این سه ماهه به طور معقولی کامل شده است، متن تا حدودی خشن باقی می ماند. به ویژه، این فصل ها هنوز این را نداشته اند بهره مندی از خدمات کپی فوق العاده ای که همسرم لورن راسک ارائه کرده است برای تمام کتاب های من این کتاب درسی تاریخچه تکاملی جالبی داشته است که از جهاتی منعکس کننده پیدایش خود زبان C++ است. درست مثل اولی Bjarne Stroustrup نسخه C++ در بالای پایه زبان C پیاده سازی شد، این خواننده شروع به کار کرد زندگی به عنوان کتاب درسی من انتزاعات برنامه نویسی در C (ادیسون-وسلی، 1998). که در 2002-03، جولی زلنسکی آن را برای استفاده با زبان برنامه نویسی C++ به روز کرد. که در آن سال استفاده از آن را در CS106 B و CS106 X آغاز کردیم. اگر چه متن اصلاح شده در ابتدا به خوبی کار می کرد، CS106 B و CS106 X در سال های اخیر به طوری که ساختار آنها دیگر سازماندهی کتاب را دنبال نمی کند. که در در سال 2009، من یک فرآیند جامع بازنویسی کتاب را آغاز کردم تا دانش آموزان در این دوره ها می توان از آن هم به عنوان یک آموزش و هم به عنوان مرجع استفاده کرد. مثل همیشه، آن روند زمان قابل توجهی طول می کشد، و تقریباً به طور قطع بخش هایی از آن وجود دارد کتابی که نیاز به بازنویسی اساسی دارد. من می خواهم از همکارانم در چند سال گذشته در استنفورد تشکر کنم با جولی زلنسکی برای کار گسترده اش بر روی ویرایش اولیه C++. من همکاران کیت شوارتز، جری کین، استیون کوپر و مهران سهامی دارند همه سهم مهمی در بازنگری داشتند. همچنین لازم است تشکر کنم چندین نسل از رهبران بخش و بسیاری از دانش آموزان در طول سالها، همه کسانی که به آموزش این مطالب شگفت انگیز کمک کرده اند. سرانجام من می خواهم از دانش آموزان CS106 B در سه ماهه زمستان 12-2011 که با خواننده تا حدی به پایان رسید و گزارش های خطا و پیشنهادات زیادی ارائه کرد. من همیشه بر این باور بوده ام که برنامه نویسی یکی از چالش برانگیزترین و فعالیت های فکری هیجان انگیزی که بشر تاکنون کشف کرده است. با نزدیک ماندن برای دستگاه، C++ تمام آزادی مورد نیاز برای ساخت برنامه هایی را به شما می دهد از تمام قدرت محاسبات مدرن استفاده کنید. امیدوارم همگی لذت ببرید سوار شدن
This text represents a major revision of the course reader that we’ve been using at Stanford for the last several years. The primary goal of the revision was to bring the approach more closely in line with the way C++ is used in industry, which will in turn make it easier to export Stanford’s approach to teaching data structures to a larger fraction of schools. Even though this quarter’s draft is reasonably complete, the text remains somewhat rough. In particular, these chapters have not yet had the benefit of the wonderful copyediting service that my wife Lauren Rusk has provided for all my books. This textbook has had an interesting evolutionary history that in some ways mirrors the genesis of the C++ language itself. Just as Bjarne Stroustrup’s first version of C++ was implemented on top of a C language base, this reader began its life as my textbook Programming Abstractions in C (Addison-Wesley, 1998). In 2002-03, Julie Zelenski updated it for use with the C++ programming language, which we began using in CS106 B and CS106 X during that year. Although the revised text worked fairly well at the outset, CS106 B and CS106 X have evolved in recent years so that their structure no longer tracks the organization of the book. In 2009, I embarked on a comprehensive process of rewriting the book so that students in these courses can use it as both a tutorial and a reference. As always, that process takes a considerable amount of time, and there are almost certainly some sections of the book that need a substantial rewrite. I want to thank my colleagues at Stanford over the last several years, starting with Julie Zelenski for her extensive work on the initial C++ revision. My colleagues Keith Schwarz, Jerry Cain, Stephen Cooper, and Mehran Sahami have all made important contributions to the revision. I also need to express my thanks to several generations of section leaders and so many students over the years, all of whom have helped make it so exciting to teach this wonderful material. Finally, I want to thank the students in CS106 B in winter quarter 2011-12 who put up with a partially finished reader and contributed many error reports and suggestions. I’ve always believed that programming is one of the most challenging and exciting intellectual activities that humans have ever discovered. By staying close to the machine, C++ gives you all the freedom you need to build applications that take advantage of the full power of modern computing. I hope you all enjoy the ride.
Cover Title Page Copyright Page To the Student To the Instructor Supplemental Resources Acknowledgments Contents 1 Overview of C++ 1.1 Your first C++ program 1.2 The history of C++ 1.3 The compilation process 1.4 The structure of a C++ program 1.5 Variables 1.6 Data types 1.7 Expressions 1.8 Statements Summary Review questions Exercises 2 Functions and Libraries 2.1 The idea of a function 2.2 Libraries 2.3 Defining functions in C++ 2.4 The mechanics of function calls 2.5 Reference parameters 2.6 Interfaces and implementations 2.7 Principles of interface design 2.8 Designing a random number library 2.9 Introduction to the Stanford libraries Summary Review questions Exercises 3 Strings 3.1 Using strings as abstract values 3.2 String operations 3.3 Thelibrary 3.4 Modifying the contents of a string 3.5 The legacy of C-style strings 3.6 Writing string applications 3.7 The strlib.h library Summary Review questions Exercises 4 Streams 4.1 Formatted output 4.2 Formatted input 4.3 Data files 4.4 Class hierarchies 4.5 The simpio.h and filelib.h libraries Summary Review questions Exercises 5 Collections 5.1 The Vector class 5.2 The Stack class 5.3 The Queue class 5.4 The Map class 5.5 The Set class 5.6 Iterating over a collection Summary Review questions Exercises 6 Designing Classes 6.1 Representing points 6.2 Operator overloading 6.3 Rational numbers 6.4 Designing a token scanner class 6.5 Encapsulating programs as classes Summary Review questions Exercises 7 Introduction to Recursion 7.1 A simple example of recursion 7.2 The factorial function 7.3 The Fibonacci function 7.4 Checking palindromes 7.5 The binary search algorithm 7.6 Mutual recursion 7.7 Thinking recursively Summary Review questions Exercises 8 Recursive Strategies 8.1 The Towers of Hanoi 8.2 The subset-sum problem 8.3 Generating permutations 8.4 Graphical recursion Summary Review questions Exercises 9 Backtracking Algorithms 9.1 Recursive backtracking in a maze 9.2 Backtracking and games 9.3 The minimax algorithm Summary Review questions Exercises 10 Algorithmic Analysis 10.1 The sorting problem 10.2 Computational complexity 10.3 Recursion to the rescue 10.4 Standard complexity classes 10.5 The Quicksort algorithm 10.6 Mathematical induction Summary Review questions Exercises 11 Pointers and Arrays 11.1 The structure of memory 11.2 Pointers 11.3 Arrays 11.4 Pointer arithmetic Summary Review questions Exercises 12 Dynamic Memory Management 12.1 Dynamic allocation and the heap 12.2 Linked lists 12.3 Freeing memory 12.4 Defining a CharStack class 12.5 Heap-stack diagrams 12.6 Unit testing 12.7 Copying objects 12.8 The uses of const 12.9 Efficiency of the CharStack class Summary Review questions Exercises 13 Efficiency and Representation 13.1 Software patterns for editing text 13.2 Designing a simple text editor 13.3 An array-based implementation 13.4 A stack-based implementation 13.5 A list-based implementation Summary Review questions Exercises 14 Linear Structures 14.1 Templates 14.2 Implementing stacks 14.3 Implementing queues 14.4 Implementing vectors 14.5 Integrating prototypes and code Summary Review questions Exercises 15 Maps 15.1 Implementing maps using vectors 15.2 Lookup tables 15.3 Hashing 15.4 Implementing the HashMap class Summary Review questions Exercises 16 Trees 16.1 Family trees 16.2 Binary search trees 16.3 Balanced trees 16.4 Implementing maps using BSTs 16.5 Partially ordered trees Summary Review questions Exercises 17 Sets 17.1 Sets as a mathematical abstraction 17.2 Expanding the set interface 17.3 Implementation strategies for sets 17.4 Optimizing sets of small integers Summary Review questions Exercises 18 Graphs 18.1 The structure of a graph 18.2 Representation strategies 18.3 A low-level graph abstraction 18.4 Graph traversals 18.5 Defining a Graph class 18.6 Finding shortest paths 18.7 Algorithms for searching the web Summary Review questions Exercises 19 Inheritance 19.1 Simple inheritance 19.2 A hierarchy of graphical shapes 19.3 A class hierarchy for expressions 19.4 Parsing an expression 19.5 Multiple inheritance Summary Review questions Exercises 20 Strategies for iteration 20.1 Using iterators 20.2 Using functions as data values 20.3 Encapsulating data with functions 20.4 The STL algorithms library 20.5 Functional programming in C++ 20.6 Implementing iterators Summary Review questions Exercises Index A B C D E F G H I J K L M N O P Q R S T U V W X