nishantc1527 / algorithms-java Goto Github PK
View Code? Open in Web Editor NEWA collection of common algorithms and data structures implemented in Java.
License: MIT License
A collection of common algorithms and data structures implemented in Java.
License: MIT License
I think only one testing class for neural network is fine.
Points: 15
Add a greedy algorithms section with a few problems. You can find some good problems here if you are having trouble looking for them. Make sure to add an explanation for each.
Points: 40
Right now, I don't have many testing methods in the JUnit tests. It would be nice to have more tests.
Points: 5 points per method.
If you can think of an issue, but don't what to fix it yourself, just add it.
Points: 5 - 10
Right now, those 4 are the only classes without an explanation.
Points; 20 per class
As specified in the README, the privilege section, it's not complete. If you feel there is something to add, feel free!
Points: 5 - 10 points, depending on the quality.
For classes like sorting, data structures like Fibonacci heap and min heap, they only support ints. It would be nice if they took a generic value.
Points: 10 for each class.
It has come to my attention that the Fibonacci Heap has a bug, specifically when you chain the extract min method. Here is a test that doesn't work:
for(int i = 0; i < 100; i ++) {
heap.insert(i);
}
int count = 0;
while(!heap.isEmpty()) {
assertEquals(count ++, heap.extractMin());
}
It would be nice if you could fix it.
Points: 20
Right now very few classes have javadoc. So, people looking at the classes can't tell certain things like "does it allow null elements?" or "can you try to insert a duplicate?" These things are supposed to be specified in the javadoc.
Points: 5 per method/class
Right now most of the package names are uppercase. That is because when I started, I accidentally left a lot of them uppercase before realizing my mistake.
Points: 2 points per package.
The code in this repository should be in Google Java Style Guide. However, it isn't my regular style, and others too. So if you see something not formatted, please fix it.
Points: 10
It's not spelled "lot's". It's spelled "lots".
This would fit into Min Priority Queues. Remember to add the JUnit test too.
Points; 30 points
In the graph theory section, in shortest path algorithms and single source shortest path, implement the A* shortest path algorithm.
Points: 20
This one is a really good place to start. So while reading the explanations, you might've noticed, I'm no author. There might be some typos or formatting error, and you can fix it if you want. You can also improve the explanation for more points, if my explanation was bad.
Points: 5 - 10 points for a typo or formatting issue, and 5 - 30 points for an improvement in explanation.
In the Fibonacci Heap, when I delete the min node while also trying to save the children, I lazily add all the children next to it. This is O(lg n), but it is possible to reduce it to O(1) by merging the children list with the one above. For help or merging, see this post.
Points: 15
Right now I don't have any time or space complexity analysis's. The space complexity is only sometimes needed.
Points: 15 - 20 depending how good it is.
If you find a bug that isn't in the issues already, then feel free to commit it.
Points: 10 - 20 (depending on how sever it was)
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.