Creative Programming Assignments
Below are links to a number of creative programming assignments that we've used at Princeton. Some are from COS 126: Introduction to Computer Science; others are from COS 226: Data Structures and Algorithms. The main focus is on scientific, commercial, and recreational applications. The assignments are posed in terms of C or Java, but they could easily be adapted to C++, C#, Python, or Fortran 90.
|Simulate the plucking of a guitar string using the Karplus-Strong algorithm.||objects, ring buffer data type, simulation||5|
|Digital Signal Processing|
|Generate sound waves, apply an echo filter to an MP3 file, and plot the waves.||data abstraction, arrays||5|
|Monte Carlo simulation to estimate percolation threshold.||union-find, simulation||5|
| Global Sequence Alignment|
|Compute the similarity between two DNA sequences.||dynamic programming, strings||5|
|Simulate the motion of N bodies, mutually affected by gravitational forces, in a two dimensional space.||simulation, standard input, arrays||3|
|Simulate the motion of N bodies, mutually affected by gravitational forces when N is large.||quad-tree, analysis of algorithms, data abstraction||8|
|Particle Collision Simulation||Simulate the motion of N colliding particles according to the laws of elastic collision.||priority queue, event-driven simulation||7|
|Atomic Nature of Matter|
|Estimate Avogadro's number using video microscopy of Brownian motion.||depth-first search, image processing, data abstraction, data analysis||8|
|Compute square roots using Newton's method.||loops, numerical computation||2|
|Cracking the Genetic Codes|
|Find the genetic encoding of amino acids, given a protein and a genetic sequence known to contain that protein.||strings, file input||5|
|Mozart Waltz Generator||Create a two-part waltz using Mozart's dice game.||arrays||3|
|Given a dungeon of rooms and corridors, and two players (monster and rogue) that alternate moves, devise a strategy for the monster to intercept the rogue, and devise a strategy for the rogue to evade the monster.||graph, breath first search, depth first search, bridges||8|
|8 Slider Puzzle|
|Solve Sam Loyd's 8 slider puzzle using AI.||priority queue, A* algorithm||5|
|GRAPHICS AND IMAGE PROCESSING|
|Plot the Mandelbrot set.||functions, arrays, graphics||3|
|Draw recursive patterns.||recursion, graphics||3|
|Draw recursive patterns.||recursion, graphics||3|
|Given a set of Euclidean points, determine any groups of 4 or more that are collinear.||polar sorting, analysis of algorithms||4|
|Smallest Enclosing Circle|
|Given a set of Euclidean points, determine the smallest enclosing circle.||computational geometry, randomized algorithm||8|
|Planar Point Location|
|Read in a set of lines and determine whether two query points are separated by any line.||computational geometry, binary tree||6|
|Small World Phenomenon||Use the Internet Movie Database to compute Kevin Bacon numbers.||graph, breadth-first search, symbol table||7|
|Map Routing||Read in a map of the US and repeatedly compute shortest paths between pairs of points.||graph, Dijkstra's algorithm, priority queue, A* algorithm.||7|
|Bin Packing||Allocate sound files of varying sizes to disks to minimize the number of disks.||priority queue, binary search tree, approximation algorithm||5|
|Traveling Salesperson Problem||Find the shortest route connecting 13,509 US cities.||linked list, heuristics||5|
|Open Pit Mining||Given an array of positive and negative expected returns, find a contiguous block that maximizes the expected profit.||divide-and-conquer, analysis of algorithms||5|
|Baseball Elimination||Given the standings of a sports league, determine which teams are mathematically eliminated.||reduction, max flow, min cut||3|
|Assignment Problem||Solve the assignment problem by reducing it to min cost flow.||reduction, min cost flow||3|
|Password Cracking||Crack a subset-sum password authentication scheme.||hashing, space-time tradeoff||7|
|Natural Language Modeling||Create a Markov model of an input text and use it to automatically generate stylized pseudo-random text.||suffix sorting or hashing||6|
|Natural Language Modeling||Create a Markov model of an input text and use it to automatically generate stylized pseudo-random text.||Markov chains, graph||4|
|Create a Markov model of an input text to perform speech attribution.||artificial intelligence, symbol table||6|
|Word Searching||Search for words horizontally, vertically and diagonally in a 2D character array||tries||7|
|Redundancy Detector||Find the longest repeated sequence in a given text.||suffix sorting, strings||4|
|Text Indexing||Build an inverted index of a text corpus and find the position of query strings in the text.||suffix sorting or binary search tree||4|
|Linear Feedback Shift Register||Encrypt images using a linear feedback shift register.||objects, encryption||4|
|Pictures from Space||Detect and fix data errors in transmission using a Hadamard code.||2D arrays, error-correcting codes||3|
|Prefix Free Codes||Decode a message compressed using Huffman codes.||binary trees, data compression||4|
|Burrows-Wheeler||Implement a novel text compression scheme that out-compresses PKZIP.||suffix sorting, arrays, data compression||7|
|RSA Cryptosystem||Implement the RSA cryptosystem.||big integers, repeated squaring, analysis of algorithms||8|
|Linked List Sort||Shellsort a linked list.||linked list, shellsort||4|
|Batcher Sort||Implement Batcher's even-odd mergesort.||divide-and-conquer, parallel sorting hardware||6|
|Rational Arithmetic||Implement a Rational number data type.||struct, data abstraction, Euclid's algorithm||3|
|Factoring||Factor large integers using Pollard's rho method.||big integers, Euclid's algorithm||5|
|Deques and Randomized Queues||Create deque and randomized queue ADTs.||abstract data types, generics||5|
|Linear Congruential Random Number Generator||Find the cycle length of a pseudo-random number generator using Floyd's algorithm.||loops, mod||2|
|Stock Market||Predict the performance of a stock using Dilbert's rule.||loops||2|
|Subset Sum||Partition the square roots of 1 to 100 into two subsets so that their sum is as close as possible to each other.||various||6|
|Loops and Conditionals||Binary logarithm, checkerboard pattern, random walk, Gaussian distribution.||loops and conditionals||1|
Here are some Nifty Assignments created by instructors at other universities. They are more oriented towards recreational applications, but are fun and creative.
How to get Data Structure assignment done from experts?
If Data structures are not your strong area, it is better consider online assignment services provided by AAH. It is a legitimate service started for the students from colleges and Universities pursuing master and bachelor. You will get the solution to all your Computer programming and data structures assignment problems within a stipulated time. You are just required to share your assignment requirements with us. You can either fill the order form or e-mail at firstname.lastname@example.org. A complete annotated homework solution will be uploaded on your secure assignment account with us.
Learn the subject and hire tutors for assignment writing
To understand a subject, it's important and necessary to study subject with the intent of learning and interest. It is difficult to develop an understanding of the subject without the interest. Data Structure is one such subject that requires a great deal of perseverance to master. It is the subject that can be demanding at times, and one has to spend hours understanding algorithms and their practical implementations. Moreover, professors might ask to implement any computer networking algorithm using different data structures in Java Programming. If you are in a panic mode, just relax and let our experts help you sail through.
Many universities and schools in US and UK follows the same grading criteria, and they believe in more and more assignment writing so that students get to learn the subject on their own. However, time limitations and other priorities supersede to make student miss their deadlines. It is recommended to take assistance from the experts in such cases.
AllAssignmentHelp writing Service is distinctive, unmatchable and of high-quality that will you to excel in their Data Structure classes. Our emphasis is to prepare you well for the final papers and other quizzes. Hence, we try to make our assignment solutions self-explanatory. Apart from the premium solution, you get free bibliography with every assignment solution to enhance your knowledge about the subject. All the solutions are perfect for students to follow. Allassignmenthelp experts are highly qualified and well versed in the Data Structure concepts, and we always look forward to helping you in difficult topics given below:
- Arrays assignment help
- Stacks algorithms help and its applications
- Help with Queues
- Help with Linked Lists
- Help with Heaps
- Trees assignment help
- Sorting algorithms
- String Matching Algorithms
A Few more subtopics and advanced topics that are covered by us are:
- Analysis techniques: Asymptotic Analysis, Analysis of Algorithms, Asymptotic Notation: The "Big-Oh”, Pseudo-Code, Quick Mathematical Review, Running Time
- Design principles: Data Structures and Algorithms ,Object-Oriented Design Principles assignment help.
- Dictionaries: AVL Trees, Binary Search Trees, Hash Tables, The Dictionary Abstract Data Type
- Strings: Brute-Force String Pattern Matching, Regular Expression Pattern Matching, The String Abstract Data Type, Tries
- Sequences: General Sequences, Case Study: Bubble-Sort on a Sequence, Positional Sequences, Ranked Sequences
- Priority Queues: Heaps, Priority Queue as a Sequence, The Priority Queue Abstract Data Type
- Sets, Sorting, Selection: Complexity of Sorting, Sets, Selection and Sorting: Merge Sort, Quick Sort, Radix Sort
- Graphs: Data Structures for Graphs, Directed Graphs, Graph Traversal, The Graph Abstract Data Type
- Trees: Basic Algorithms on Trees, Binary Trees, Data Structures for Representing Trees, The Tree Abstract Data Type
Why Online assignments help service from AllAssignmentHelp beneficial?
Allassignmenthelp has a team with expertise and experience in academic projects. Our team has professionals with relevant industry experience, who are focused on helping students with their homework. We work on the fundamental of ASAP, which means Affordability, Plagiarism free solution, Availability, and Professionalism. We are a team of professionals who tries to help you with every academic check.
1. Our professional tutors always work in sync with the requirements given to us, and this makes our assignment solution an ideal one.
2. Plagiarism is a demon that haunts everyone. Anyone can copy-paste from the internet and hand it over to you. However, we have plagiarism detection tools, like Turnitin and Grammarly to rule out the possibility of any plagiarism issue.
3. Our service comes with a guarantee. We ensure a minimum of 2:1 grade
There are no barriers with borders. We provide help with Data Structures assignmentto the students based in Australia, the UK, New Zealand and the US. We appreciate your stay and looking forward to a long professional relationship.