List of Java programs.
Here is a complete list of theJava programs in the textbook.
Click on the program name to access the Java code;
click on the reference number for a brief description;
read the textbook for a full discussion.
You can download them all together
as IntroProgramming.zip.
1 | ELEMENTS OF PROGRAMMING | |
---|---|---|
1.1.1 | HelloWorld.java | Hello, World |
1.1.2 | UseArgument.java | Using a command-line argument |
1.2.1 | Ruler.java | String concatenation example |
1.2.2 | IntOps.java | Integer multiplication and division |
1.2.3 | Quadratic.java | Quadratic formula |
1.2.4 | LeapYear.java | Leap year |
1.2.5 | RandomInt.java | Casting to get a random integer |
1.3.1 | Flip.java | Flippling a fair coin |
1.3.2 | EightHellos.java | Your first while loop |
1.3.3 | PowersOfTwo.java | Computing powers of two |
1.3.4 | DivisorPattern.java | Your first nested loops |
1.3.5 | Harmonic.java | Harmonic numbers |
1.3.6 | Sqrt.java | Newton's method |
1.3.7 | Binary.java | Converting to binary |
1.3.8 | Gambler.java | Gambler's ruin simulation |
1.3.9 | Factors.java | Factoring integers |
1.4.1 | Sample.java | Sampling without replacement |
1.4.2 | CouponCollector.java | Coupon collector simulation |
1.4.3 | PrimeSieve.java | Sieve of Eratosthenes |
1.4.4 | SelfAvoidingWalk.java | Self-avoiding random walks |
1.5.1 | RandomSeq.java | Generating a random sequence |
1.5.2 | TwentyQuestions.java | Interactive user input |
1.5.3 | Average.java | Averaging a stream of numbers |
1.5.4 | RangeFilter.java | A simple filter |
1.5.5 | PlotFilter.java | Input-to-drawing filter |
1.5.6 | BouncingBall.java | Bouncing ball |
1.5.7 | PlayThatTune.java | Digital signal processing |
1.6.1 | Transition.java | Computing the transition matrix |
1.6.2 | RandomSurfer.java | Simulating a random surfer |
1.6.3 | Markov.java | Mixing a Markov chain |
2 | FUNCTIONS | |
2.1.1 | Newton.java | Newton's method (revisited) |
2.1.2 | Gaussian.java | Gaussian functions |
2.1.3 | Coupon.java | Coupon collector (revisited) |
2.1.4 | PlayThatTune.java | Play that Tune (revisited) |
2.2.1 | StdRandom.java | Random number library |
2.2.2 | StdArrayIO.java | Array I/O library |
2.2.3 | IFS.java | Iterated function systems |
2.2.4-5 | StdStats.java | Data analysis library |
2.2.6 | Bernoulli.java | Bernoulli trials |
2.3.1 | Euclid.java | Euclid's algorithm |
2.3.2 | TowersOfHanoi.java | Towers of Hanoi |
2.3.3 | Beckett.java | Gray code |
2.3.4 | Htree.java | Recursive graphics |
2.3.5 | Brownian.java | Brownian bridge |
2.4.1 | Percolation.java | Percolation scaffolding |
2.4.2 | VerticalPercolation.java | Vertical percolation |
2.4.3 | Visualize.java | Visualization client |
2.4.4 | Estimate.java | Percolation probability estimate |
2.4.5 | Percolation.java | Percolation detection |
2.4.6 | PercPlot.java | Adaptive plot client |
3 | OBJECT ORIENTED PROGRAMMING | |
3.1.1 | ChargeClient.java | Charged particles |
3.1.2 | AlbersSquares.java | Albers squares |
3.1.3 | Luminance.java | Luminance library |
3.1.4 | Grayscale.java | Converting color to grayscale |
3.1.5 | Scale.java | Image scaling |
3.1.6 | Fade.java | Fade effect |
3.1.7 | Potential.java | Visualizing electric potential |
3.1.8 | GeneFind.java | Finding genes in a genome |
3.1.9 | Cat.java | Concatenating files |
3.1.10 | StockQuote.java | Screen scraping for stock quotes |
3.1.11 | Split.java | Splitting a file |
3.2.1 | Charge.java | Charged-particle implementation |
3.2.2 | Stopwatch.java | Stopwatch |
3.2.3 | Histogram.java | Histogram |
3.2.4 | Turtle.java | Turtle graphics |
3.2.5 | Spiral.java | Spira mirabilis |
3.2.6 | Complex.java | Complex numbers |
3.2.7 | Mandelbrot.java | Mandelbrot set |
3.2.8 | StockAccount.java | Stock account |
3.3.1 | Complex.java | Complex numbers (revisited) |
3.3.2 | Counter.java | Counter |
3.3.3 | Vector.java | Spatial vectors |
3.3.4 | Document.java | Document |
3.3.5 | CompareAll.java | Similarity detection |
3.4.1 | Body.java | Gravitational body |
3.4.2 | Universe.java | N-body simulation |
4 | DATA STRUCTURES | |
4.1.1 | ThreeSum.java | 3-sum problem |
4.1.2 | DoublingTest.java | Validating a doubling hypothesis |
4.2.1 | TwentyQuestions.java | Binary search (20 questions) |
4.2.2 | Gaussian.java | Bisection search (function inversion) |
4.2.3 | BinarySearch.java | Binary search (sorted array) |
4.2.4 | Insertion.java | Insertion sort |
4.2.5 | InsertionTest.java | Doubling test for insertion sort |
4.2.6 | Merge.java | Mergesort |
4.2.7 | FrequencyCount.java | Frequency counts |
4.2.8 | LRS.java | Longest repeated substring |
4.3.1 | ArrayStackOfStrings.java | Stack of strings (array) |
4.3.2 | LinkedStackOfStrings.java | Stack of strings (linked list) |
4.3.3 | DoublingStackOfStrings.java | Stack of strings (array doubling) |
4.3.4 | Stack.java | Generic stack |
4.3.5 | Evaluate.java | Expression evaluation |
4.3.6 | Queue.java | Generic FIFO queue (linked list) |
4.3.7 | MD1Queue.java | M/D/1 queue simulation |
4.3.8 | LoadBalance.java | Load balancing simulation |
4.4.1 | Lookup.java | Dictionary lookup |
4.4.2 | Index.java | Indexing |
4.4.3 | BST.java | BST symbol table |
4.4.4 | DeDup.java | Dedup filter |
4.5.1 | Graph.java | Graph data type |
4.5.2 | IndexGraph.java | Using a graph to invert an index |
4.5.3 | PathFinder.java | Shortest-paths client |
4.5.4 | PathFinder.java | Shortest-paths implementation |
4.5.5 | SmallWorld.java | Small-world test |
No comments:
Post a Comment