User Name
|
Cinjection |
Unique Hits
|
1,701 |
Real Name
|
Oleksi Derkatch |
Location
|
Canada Ontario |
Occupation
|
Student/Software Developer |
Gender
|
Male |
Age
|
18 Years Old |
WebSite
|
- - - |
|
|
Intorduction to memoization.
Programming
|
Memoization(not memorization) is a programming technique often used in dynamic programming. In essence, it just means having your program remember previous calculations and reuse those results in similar calculations later. It's a rather simple technique and yet it can make a huge difference in efficiency.
Let's the common task of calculating Fibonacci numbers. Say that I need to output the first n Fibonacci numbers. Well the simplest approach is to use tree recursion:
Now although this solution is the easiest to formulate it is extremely inefficient. The reason why it is so inefficient, is because there is a huge amount of recalculation involved. Take fibonacci(6), which is to take the 6th term of Fibonacci. If we trace the recursive calls, we will see a structure similar to this:
f(6)
f(5) + f(4)
f(4) + f(3) + f(3) + f(2)
f(3) + f(2) + f(2) + f(1) + f(2) + f(1) + f(1) + f(0)
f(2) + f(1) + f(1) + f(0) + f(1) + f(0) + 1 + f(1) + f(0) + 1 + 1 + 0
f(1) + f(0) + 1 + 1 + 0 +... View In Full
 |
4 Comments |
8.00 out of 10 |
|
|
Strings in C++
Programming
|
In C, if you ever wanted to use strings, you would need to use a null-terminated array of characters. It was ugly, unsophisticated, and very susceptible to buffer overflows. C++ and it's STL gives you a much better solution; the string class.
Making a string is easy:
#include <string>
using namespace std;
string firstName("Oleksi");
string lastName;
lastName = "Derkatch";
Simple, as you can see. Strings keep track of their own size using the length() member:
string name("Oleksi");
name.length(); //Returns 6
name = "ma";
name.length(); //Returns 2
As you can see, changing the string value is simple as well. If you need to access individual characters of the string, you can treat the string as a character array in C. That is, you can easily do something like this:
string name("Jack");
for (int i(0); i < name.length(); ++i)
{
cout << name ;
}
C++ overloads the extracti... View In Full
 |
1 Comments |
6.00 out of 10 |
|
|
Vectors in C++
Programming
|
The C++ STL library defines a vector class which gives you a pre-made generic vector. You can use it in the same way as you would a regular array, only a vector is safer to use and more sophisticated.
Creating one is simple:
#include <vector>
using namespace std;
vector<int> myVector;
You have now created a vector to hold integers. One of the best things about vectors is that memory for them is dynamically allocated. This is perfect for occasions when you do not know the exact number of elements you may need at compile time. Here's an example:
#include <vector>
using namespace std;
vector<int> myVector;
myVector.push_back(42);
myVector.push_back(34);
Note that I never explicitly tell the compiler how large my vector is. At this point in time, it contains 2 elements, but I can easily add another element to the back of the vector. If I need to get the number of elements in the vector, I can simply use the size()... View In Full
 |
4 Comments |
9.00 out of 10 |
|
|
|
Julia Set
C# (C Sharp)
|
8 Days Ago
|
1
|
- - -
|
Yes
|
2,209 Chrs
|
|
Draws the Julia set. This option lets you customize colors and the specific set. You can even draw the Mandelbrot set. Experiment with the colors to see some really pretty fractals.
|
|
|
Mandelbrot Set Generator
C# (C Sharp)
|
9 Days Ago
|
2
|
- - -
|
Yes
|
6,064 Chrs
|
|
This program will draw the Mandelbrot set. I hope you enjoy it. Feel free to change the parameters and see the various pretty pictures :P
|
|
|
MD5 Brute-Forcer
Ruby
|
117 Days Ago
|
2
|
- - -
|
- - -
|
444 Chrs
|
|
This program was designed to solve the following programming challenge from osix.net
"Sometimes there is no way to solve certain problems except for brute forcing the answer. This is just such a ca
|
|
Please login to post comments. |
|
/admintool/scheduler.php
but the new code is in volunteer (a new function above the scheduler one)
|
|
Hey, you might want to check out the voluneteer.php work I've done. It's almost done but I can't get it to:
a) call the scheduler function
b) figure out the selections of the drop down menus
|
|
Haha,
As long as you keep coming back and checking us out. Thats good enough for me :-) eventually you'll find some more time ;-)
I just know you wont be able to stay away from your "pet projects" for too long :-P lol
Kind regards,
Scott
|
|
Hey up,
Just thought i'd say hi. Ain't spoken to you for a while. Last thing i new, you were getting addicted to that eular stuff. Still doing them?
Kind regards,
Scott
|
|
I figured I'd better show up here now and then otherwise I might be booted out of the club.
|
|
Yo! Homie!! Now I can call YOU that :-P
|
|
Thanks,
That's what I'm actually working on. I'm taking Java in college. Our course required the "Java: A Beginner's Guide" by Herbert Schildt.
Some of his explanations of concepts are pretty good. Others need some serious work. So, sometimes I have to interpret the things he says about certain subjects and translate it to something I would understand ... and, honestly, it's not easy sometimes.
If it weren't for the fact that I already dealt with if/else, switch, while, do-while, and for in C++ I would probably be lost in Java.
|
|
I'll definitely ask you. Selection structures and repetition structures, regardless of the language that's being learned, are simple.
I want to up it a notch, but I don't know where to go with Java. I don't want to get into Swing or awt, yet. There are things I would like to learn before getting into such vast subjects.
Any suggestions?
|
|
Take a look at my newest Java code. I have only been working with Java for about 4 days or so.
|
|
 |
Oleksi Derkatch (18) Canada, Ontario |
|
Cinjection has 14 fans
become a fan |
|
 |
|
 |
|