#codingexercise
Flatten out a linked list with child and next pointers
void Flatten(Node head)
{
if (head == null) return;
Node temp;
Node tail = head;
while (tail.next)
tail = tail.next;
Node cur = head;
while ( cur != tail)
{
if (cur.child && cur.child.visited == false)
{
tail.next = cur.child; // this goes to the tail
tmp = cur.child; // tail is updated
tmp.visited = true;
while (tmp.next)
tmp = tmp.next;
tmp.visited = true;
tail = tmp;
}
cur = cur.next;
}
}
#probability question
A fair die is thrown k times. What is the probability of sum of k throws to be equal to a number n?
void FairThrow(int k, int n, ref int current, ref int sum, ref int count, ref int total)
{
if (current == k) {
total += 1;
if (sum == n) { count +=1;}
return;
}
for (int i = 1; i <=6; i++)
{
sum+= i;
current += 1;
FairThrow( k, n, current, sum, count);
sum -= i;
current -= 1;
}
}
Probability = count/total;
Flatten out a linked list with child and next pointers
void Flatten(Node head)
{
if (head == null) return;
Node temp;
Node tail = head;
while (tail.next)
tail = tail.next;
Node cur = head;
while ( cur != tail)
{
if (cur.child && cur.child.visited == false)
{
tail.next = cur.child; // this goes to the tail
tmp = cur.child; // tail is updated
tmp.visited = true;
while (tmp.next)
tmp = tmp.next;
tmp.visited = true;
tail = tmp;
}
cur = cur.next;
}
}
#probability question
A fair die is thrown k times. What is the probability of sum of k throws to be equal to a number n?
void FairThrow(int k, int n, ref int current, ref int sum, ref int count, ref int total)
{
if (current == k) {
total += 1;
if (sum == n) { count +=1;}
return;
}
for (int i = 1; i <=6; i++)
{
sum+= i;
current += 1;
FairThrow( k, n, current, sum, count);
sum -= i;
current -= 1;
}
}
Probability = count/total;
No comments:
Post a Comment