sethpoulsen / data-structures-playground Goto Github PK
View Code? Open in Web Editor NEWA webapp for learning how to manipulate data structures with code.
License: GNU General Public License v3.0
A webapp for learning how to manipulate data structures with code.
License: GNU General Public License v3.0
Change the type signature of makeLine
form
export function makeLine(coords: number[] = [0, 0, 0, 0])
to
export function makeLine(start: Point, end: Point)
where
type Point = { x: number, y: number }
for better type safety and so its easier to call.
Let user write code to directly manipulate the data structure diagram.
Start with C++, since that's what they use in CS 225 at UIUC.
Also, generate code to show the user based on the operations they did.
Options
Currently, you can tab through all the control boxes in a sensible order, which is good. As an improvement, we should also have
Pointer variable names should be validated the same as C language variable names, and should be checked for duplicates.
Operations:
The UI is all there, but none of it works:
Currently if we have a pointer p
and p->next
is NULL
, then attempting to reassign another pointer to p->next
does nothing, but it actually should work just fine.
There should also be the word NULL
as part of the input list for reassigning pointers, so you can just reassign anything to NULL
whenever you want.
Each file should have exactly one newline at the end
Let the user provide a comma separated list of numbers to initialize the linked list.
I think users are going to want this feature.
We're going to need to come up with some sort of sensible versioning system to make it happen.
Some automated tests would be really nice.
Sure, unit test would be nice, but for a start lets just get some simple integration tests going:
This will at least help us make sure we don't ever completely break things.
Ideally, we would have a development build to run while developing, then a release build which runs all the test and does all the linting, and which is automatically built anytime someone opens a pull request or pushes to mainline.
I assume people will want to be able to delete nodes and pointers somehow, even when in the mode where nodes that are left dangling are still drawn on the screen.
We need to come up with what the UI should be like, then implement it.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.