I am in need of ideas for a Computer Science related project for an experienced programmer. I'm looking for unique and interesting things to implement such as Suffix Trees and Finite State Machines.
Four answers:
monkey_tester
2008-09-22 16:31:03 UTC
Related to FSM's take a look at Cellular Automata. Easy to program, but there's a lot of depth to explore - several books have been written about the subject.
========================================... an easy project (depending on what development tools you have) might be a journal editor, something like notepad, but one that has some date-aware features, such as - the ability to generate a time-stamp in various formats and insert these in the document and in search strings - the ability to merge (two) journals into one, automatically keeping all the entries sorted by date-time - the ability to scroll by entry, rather than by line of text - the ability to store the journal in encrypted form using a user-specified key, and decrypt it only if the correct key is supplied when the journal is opened. =======================================... I like the "cal" application on Linux, but I am still looking for the perfect calendar app, one that can manage appointments and provide alarmings when events are imminent, without a whole lot of GUI glitz getting in the way. Unfortunately this might be too hard for an intro to programming project. My preference is to see the days vertically and the appointments horizontally, with a dark line indicating the start of the week (on whatever day I choose it to be) eg. Jan 2012 ----------------------------------------... 1 6:00-9:35 recover from too much fun =|= 11:45 finish any leftovers on the buffet =|= 12:45 go back to bed 2 3 4 8:00* first day of classes (shown as being alarmed) 5 6 7 Jan 2012 ----------------------------------------... 8 9 There should be options (settings): - to suppress the display of any day that has no events registered. - to start the display from an arbitrary day - to specify the number of consecutive days to display - to define the day that "starts the week" - to use different sets of settings, a.k.a profiles - to operate in either command-line or interactive mode - to enable/disable alarming (requires a memory-resident, sticky, demon, service component) Interactive mode features: - to add/delete events (one time or recurring) - to set/unset alarms, on a per-event basis The alarming function would need to be memory resident, if there is not already a driver or service installed for this purpose (such as cron in unix). note: the horizontal text output format allows the appointment book to be searched easily using grep. a different format would require some other solution to the problem of searching the appointments. the interactive mode should provide a simple event-editing feature in a GUI form. =======================================...
Chris C
2008-09-22 16:22:13 UTC
Implement Binary Search Trees, as the mechanism for storing search results.
Your Mother Trebec!
2008-09-22 16:08:06 UTC
Create a program that uses an algorithm that helps rank web sites for better search results.
ⓘ
This content was originally posted on Y! Answers, a Q&A website that shut down in 2021.