GithubHelp home page GithubHelp logo

ascendho / introcs-c Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 235.42 MB

A C version library for the textbook Computer Science: An Interdisciplinary Approach written by Robert Sedgewick and Kevin Wayne

Home Page: https://introcs.cs.princeton.edu/java/home/

License: MIT License

CMake 13.66% C 86.34%
c introcs

introcs-c's Introduction

Overview

This repository hosts the C version source code for the textbook Computer Science: An Interdisciplinary Approach, co-authored by Robert Sedgewick and Kevin Wayne, and is named a Notable Book in the 21st Annual Best of Computing list by the ACM.

The book is intended for a first course in computer science for the next generation of scientists and engineers, pioneering Princeton computer science professors Robert Sedgewick and Kevin Wayne introduces core Java programming techniques in a scientific context, while also demystifying computation and illuminating its intellectual underpinnings.

You can find and download the original Java code and much more other extensive supplementary information, including suggested approaches to programming assignments, checklists, and FAQs, at this companion web site.

Goal

Because the first programming language many computer science students are exposed to is C, it makes sense to translate the java code in the textbook to C. Thus my goal is to make every student or programmer who is currently only familiar with C can follow this book easily.

Strive to keep variable names, function names, program comments, etc. consistent with the original java version, while also writing idiomatic C code.

Index

ELEMENTS OF PROGRAMMING FUNCTIONS OBJECT ORIENTED PROGRAMMING DATA STRUCTURES
HelloWorld.c
UseArgument.c
Ruler.c
IntOps.c
Quadratic.c
LeapYear.c
RandomInt.c
Flip.c
TenHellos.c
PowersOfTwo.c
DivisionPattern.c
HarmonicNumber.c
Sqrt.c
Binary.c
Gambler.c
Factors.c
Sample.c
CouponCollector.c
PrimeSieve.c
SelfAvoidingWalk.c
RandomSeq.c

Contribution

This repo is under construction, so any issue reports and code fixes are welcome. If you want to share your C version code, please fork this repo first and then submit a PR. Note that you should guarantee the correctness of the code in advance and add appropriate comments.

Finally, if you think this repo does work for you, please give a star✨ and actively rise the problem of the code you may experience, I will appreciate your kindness and continue to improve this project.

Copyright

  • The whole C version source code is licensed under MIT.
  • Other materials, including test data, is for self-study only; if you wish to use it for other purposes, please refer to the original author's license and obtain permission to do so.

Development environment

IDE: CLion 2023.1.1

Operating System: Win 11

introcs-c's People

Contributors

ascendho avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.