======Part 3 November======
=====Entries=====
====November 1, 2011====
* i had a minor awakening to my problems understanding pointers stacks and nodes i have no revised many of my poorly constructed programs and functions and not they run almost perfectly
* this is significant do to the fact i now have the ability to right better more effective code for the remainder of the semester
* Stacks and Queues are more of a pain then i first thought and have decided to stop doing them till i have a better understanding and more time to try them out
* the best challenge i have at the moment is the binary search tree i have the insert and fill functions done i am currently working on the delete and search
* i have also begun a 3 week long journey into resuscitating my home desktop after the RAM fail and then the CPU my Mother board basic BIOS kicked the bucket and when purchasing a new mother board found that my RAM i had was not the proper type
====November 14, 2011====
* i hit a wall with my computer recently when i went to buy a new mother board i could not find the proper socket or RAM system so i was forced to find a correct socket type and a upgrade in RAM
* becuase till now for 45 yrs my computer was perfect ran like a clock and never gave me a head ache or in this case wallet pains
* the concept that a Mother Board BIOS would go bad with out any warning
* this is a HPC type project and in so i am exploring the innards of my PC and diagnosing the problems in which it has
====November 22&23, 2011====
* VACATION STARTS WEDNESDAY, this has no dealing with the courses but i need and i know others need this break to catch the fuck up on things even Brian Ewanyk is looking worn out
* this is significant do to the fact i will be able to catch up most likely in doing the project for Joe's class and the stacks and queues for Matt's class
* the concept of discrete math in programing is the most confusing i understand its in there but its highly unlikely to promote usage on a wide scale
* well now that i have time to focus on stacks queues and one of the 2 projects for Joe i can now most likely get help via IRC and be able to understand what its looking for
====November 28, 2011====
* i final finished the coding for stacks and hoping it will work when compiled and ran on Friday i don't plan to work on it till then since i have the rest of my opus and few my projects to finish
* this is significant since now all i need to do if it works is to finish queues and then i will have 3 projects for sysprog done 6 for Data Structures and 4 HPC the best I've ever done which in the big picture is kinda sad and pathetic.
* the concept that makes the least amount of since at the moment is the alphabetical sorting algorithm
* pick one anyone numerous i feel like iI'm running out time and i have a lot left to do thus why instead of working on projects for HPCV im working on my EOCE's and my Opus
=====Data Structure Topics=====
====Hash Tables====
Definition: Hash tables are used to reference the location of large chunks of related Data or info to the subject the Hash table its self represents.
Example:
Hash table count bases
base2|base8|base10|base16
0 0 0 0
1 1 1 1
2 2 2
3 3 3
4 4 4
5 5 5
6 6 6
7 7 7
8 8
9 9
A
B
C
D
E
F
====Binary Tree Insertion====
the act of insertion is just a basic way of say fill in a node structure with values of some kind
Example
int main(Node *root,Node *next,Node *prev)
{
Node *tmp;
int input;
printf("please enter a value to add to the binary tree: ");
scanf("%d", &input);
tmp=root;
while( input != -1)
{
if (tmp == NULL)
{
tmp=(Node *) malloc (sizeof(Node));
tmp->value=input;
}
else
{
if (input > tmp->value)
{
tmp=tmp->next;
if (tmp == NULL)
{
tmp=(Node *) malloc (sizeof(Node));
tmp->value=input;
tmp=root;
}
}
else
{
tmp=tmp->prev;
if (tmp == NULL)
{
tmp=(Node *) malloc (sizeof(Node));
tmp->value=input;
tmp=root;
}
}
}
}
====removal&sreach====
removal of a node from a binary tree is difficult how ever a search function is not as difficult
Definition Search in binary tree: transverse the tree by greater or less then comparison till you end up at your destination
Definition removal in binary tree: "freeing" the node's selected value and removing the entire tree around to make sense with out losing and nodes that are still desired.
Example
Node *tmp,*tmp2,*tmp3,*tmp4;
tmp=root;
int choice,flag=0;
while(input != -1)
{
if(input > tmp->value)
{
while(tmp->value < input)
{
tmp=tmp->next;
tmp4=tmp->next->next;
if(tmp->next->value == input)
{
printf("%d is the number your searching for, enter 1 to delete or 0 to skip deletion: \n", tmp->value);
scanf("%d", &flag);
tmp=tmp4->prev;
tmp2=tmp->prev;
if(flag == 1)
{
while(tmp2->prev->prev != NULL)
{
tmp3=tmp2->prev;
tmp2->prev=tmp3->next;
tmp3->prev=tmp->prev;
tmp3->next=tmp->next;
tmp4->prev=tmp3;
tmp->prev=tmp->next=NULL;
free(tmp);
}
}
}
}
}
====sorting algorithms====
definition: a sorting algorithm is a process with in a program that compares to a set standard or rules
Example
the binary tree requires a algorithm to sort the numbers by greater than or less than and then keeps that comparison going till it finds a place to set the entered value
====selection algorithm====
Definition: a selection statement is a basic algorthm that requires a true or flase answer in the binary environment or a greater to or less then for the natural environment.
Example:
Natural selection and the food chain is a basic natural selection algorithm just as an if statement in comparison of two or more variables, or a while loop with a condition statement
====Graphs====
Definition: a Graph by definition is a set or intersecting edges aka a system to compare or show information or data
Example:
the binary search tree is the best example of a greater then or less then graph and its simple to understand but difficult to implement.
====Big-O, theta, Bounds====
these are equations that measure the practicality of algorithm based on its simplicity and complexity simple to read complex to implement.
====Bubble sort====
definition: bubble sorting to my understanding is a swap in and out sort that will take one values or place and swap it with another to make corrections or to change a pattern if desired.
====insertion sort====
Definition: by definition insertion sort algorithms work by inserting a variable one at a time in a single D list or array.
====Quick sort====
Definition: Quick sorting is the method that when u take the average or a set number of varible list lengths and start sorting them by length not by relevance its going to run more quickly and smoothly.
====merge sorting====
Conceptually, a merge sort works as follows
1. If the list is of length 0 or 1, then it is already sorted. Otherwise:
2. Divide the unsorted list into two sublists of about half the size.
3. Sort each sublist recursively by re-applying the merge sort.
4. Merge the two sublists back into one sorted list.
Merge sort incorporates two main ideas to improve its runtime:
1. A small list will take fewer steps to sort than a large list.
2. Fewer steps are required to construct a sorted list from two sorted lists than from two unsorted lists. For example, you only have to traverse each list once if they're already sorted (see the merge function below for an example implementation).
ALL INFO ABOVE FOR DEFINITION IS BY WIKIEPIDIA
====See Removal and Search====
=====hpc1 Topics=====
====Keyword 1====
Identification and definition of the chosen keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki **code** block, an example follows:
/*
* Sample code block
*/
#include
int main()
{
return(0);
}
====Keyword 2====
Identification and definition of the chosen keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$
====Keyword 3====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki **code** block, an example follows:
/*
* Sample code block
*/
#include
int main()
{
return(0);
}
====Keyword 4====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$
====Keyword 5====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki **code** block, an example follows:
/*
* Sample code block
*/
#include
int main()
{
return(0);
}
====Keyword 6====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$
====Keyword 7====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki **code** block, an example follows:
/*
* Sample code block
*/
#include
int main()
{
return(0);
}
====Keyword 8====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$
====Keyword 9====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki **code** block, an example follows:
/*
* Sample code block
*/
#include
int main()
{
return(0);
}
====Keyword 10====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$
====Keyword 11====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki **code** block, an example follows:
/*
* Sample code block
*/
#include
int main()
{
return(0);
}
====Keyword 12====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$
=====sysprog Topics=====
====Server sockets====
a server socket is a end point and access point to communicate bidirectional to a server for either for information or just Data
it is monitored and limited by user access administrator access or a roots access in hopes of not causing to much chaos and problems
usually a server sockets are used for lagre programs or an Internet protocol or a website(which this can be ran off a simple computer not a server)
====client socket====
a client socket is an end point where the data is either received or transmitted via an CLI request not an automated response like a server socket
now there are some server sockets that require a CLI input or request but then it would be a server client system where you are managing your server and not automating it
====unix domain socket====
a Unix Domain socket or IPC socket is an end point to where request either form a server socket or a client socket is orginized and some times processed and moved along to its destination or back to its transmission
====Keyword 4====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$
====Keyword 5====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki **code** block, an example follows:
/*
* Sample code block
*/
#include
int main()
{
return(0);
}
====Keyword 6====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$
====Keyword 7====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki **code** block, an example follows:
/*
* Sample code block
*/
#include
int main()
{
return(0);
}
====Keyword 8====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$
====Keyword 9====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki **code** block, an example follows:
/*
* Sample code block
*/
#include
int main()
{
return(0);
}
====Keyword 10====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$
====Keyword 11====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you wish to aid your definition with a code sample, you can do so by using a wiki **code** block, an example follows:
/*
* Sample code block
*/
#include
int main()
{
return(0);
}
====Keyword 12====
Identification and definition of the chosen keyword. Substitute "keyword" with the actual keyword.
If you want to demonstrate something on the command-line, you can do so as follows:
lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$
=====data Objective=====
====Objective====
State the course objective; define what that objective entails.
this months objective was to finish the opus and to do the binary tree
===Method===
State the method you will use for measuring successful academic/intellectual achievement of this objective.
completion and ability to run is the to measure successfulness.
===Measurement===
Follow your method and obtain a measurement. Document the results here.
its complete and i have used it twice and runs correctly
===Analysis===
Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.
* How did you do?
i did well
* Room for improvement?
always able to im prove but i cant see one
* Could the measurement process be enhanced to be more effective?
more checks and more people to test it
* Do you think this enhancement would be efficient to employ?
yes to be tested by more people and more times proves the effectiveness
* Could the course objective be altered to be more applicable? How would you alter it?
don't know of one and didn't alter anything
=====hpc1 Objective=====
====Objective====
State the course objective; define what that objective entails.
to finish the stuff
===Method===
State the method you will use for measuring successful academic/intellectual achievement of this objective.
if i get it done
===Measurement===
Follow your method and obtain a measurement. Document the results here.
still going
===Analysis===
Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.
* How did you do?
doing well
* Room for improvement?
always
* Could the measurement process be enhanced to be more effective?
breakdown instead of true or false
* Do you think this enhancement would be efficient to employ?
yes
* Could the course objective be altered to be more applicable? How would you alter it?
maybe don't know
=====sysprog Objective=====
====Objective====
State the course objective; define what that objective entails.
===Method===
State the method you will use for measuring successful academic/intellectual achievement of this objective.
===Measurement===
Follow your method and obtain a measurement. Document the results here.
===Analysis===
Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.
* How did you do?
* Room for improvement?
* Could the measurement process be enhanced to be more effective?
* Do you think this enhancement would be efficient to employ?
* Could the course objective be altered to be more applicable? How would you alter it?
=====Experiments=====
====Experiment 1====
===Question===
What is the question you'd like to pose for experimentation? State it here.
===Resources===
Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.
===Hypothesis===
Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.
State your rationale.
===Experiment===
How are you going to test your hypothesis? What is the structure of your experiment?
===Data===
Perform your experiment, and collect/document the results here.
===Analysis===
Based on the data collected:
* was your hypothesis correct?
* was your hypothesis not applicable?
* is there more going on than you originally thought? (shortcomings in hypothesis)
* what shortcomings might there be in your experiment?
* what shortcomings might there be in your data?
===Conclusions===
What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.
====Experiment 2====
===Question===
What is the question you'd like to pose for experimentation? State it here.
===Resources===
Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.
===Hypothesis===
Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.
State your rationale.
===Experiment===
How are you going to test your hypothesis? What is the structure of your experiment?
===Data===
Perform your experiment, and collect/document the results here.
===Analysis===
Based on the data collected:
* was your hypothesis correct?
* was your hypothesis not applicable?
* is there more going on than you originally thought? (shortcomings in hypothesis)
* what shortcomings might there be in your experiment?
* what shortcomings might there be in your data?
===Conclusions===
What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.
====Retest====
If you're doing an experiment instead of a retest, delete this section.
If you've opted to test the experiment of someone else, delete the experiment section and steps above; perform the following steps:
===State Experiment===
Whose existing experiment are you going to retest? Prove the URL, note the author, and restate their question.
===Resources===
Evaluate their resources and commentary. Answer the following questions:
* Do you feel the given resources are adequate in providing sufficient background information?
* Are there additional resources you've found that you can add to the resources list?
* Does the original experimenter appear to have obtained a necessary fundamental understanding of the concepts leading up to their stated experiment?
* If you find a deviation in opinion, state why you think this might exist.
===Hypothesis===
State their experiment's hypothesis. Answer the following questions:
* Do you feel their hypothesis is adequate in capturing the essence of what they're trying to discover?
* What improvements could you make to their hypothesis, if any?
===Experiment===
Follow the steps given to recreate the original experiment. Answer the following questions:
* Are the instructions correct in successfully achieving the results?
* Is there room for improvement in the experiment instructions/description? What suggestions would you make?
* Would you make any alterations to the structure of the experiment to yield better results? What, and why?
===Data===
Publish the data you have gained from your performing of the experiment here.
===Analysis===
Answer the following:
* Does the data seem in-line with the published data from the original author?
* Can you explain any deviations?
* How about any sources of error?
* Is the stated hypothesis adequate?
===Conclusions===
Answer the following:
* What conclusions can you make based on performing the experiment?
* Do you feel the experiment was adequate in obtaining a further understanding of a concept?
* Does the original author appear to have gotten some value out of performing the experiment?
* Any suggestions or observations that could improve this particular process (in general, or specifically you, or specifically for the original author).