Archived Notes on Grading: HW3


Homework #3

The third homework had...

The 14 exercises were broken up into 10 groups...

Rosen1.7 2, 10acf, 16b    Rosen1.7 8cd
 + B from handout #5
Rosen1.8 2    Rosen1.8 8ab, 20ab    B from handout #6
Rosen2.1 34    Rosen2.2 2    Rosen2.2 6b    Rosen2.2 18
 
Rosen1.8 28a

...and the assignment's 71 points were (unevenly) divided among the 10 groups as follows:

8    5
6    8    8
12    12    4    6
 
2*

You should be able to find the corresponding ten scores on the front page of your homework, arranged in a three-row table (9-cell table) quite similar to the above. [* Actually, the two points for 28a were notated outside the boundaries of the score table--look for either "+2" or "+0".]

Your total score (out of 71) should also appear prominently on the front page.

A few comments on specific exercises...

   Rosen1.8
2, 8ab, 20ab.
   The symbol "&1" means that you neglected to prove some result that you were supposed to prove.
 
   Rosen2.2
6b.
  

Please note that the bit string 1010 requires only 2 bitwise ANDs, not 4...

1010 /\ (1010 - 1) = 1000  [iteration 1]
1000 /\ (1000 - 1) = 0000  [iteration 2]

Likewise, a billion-bit string consisting of 2 1's and 999999998 0's will still only require 2 bitwise ANDs (!). These two examples show that you can't just say, "n bitwise ANDs are required to find the number of 1 bits in a string S"; you need to include a crucial qualification: namely, the phrase, "in the worst case."

[If you used n in your answer without explaining what it stood for, we assumed that you meant "the length of S."]

The comment "why?" means that you didn't justify your answer. In general, exercises like this require proofs.

Our solutions for the third homework have been posted.

For those who are curious, the median score was 51, and the mean score was 48.8 (sigma ~ 13).