CS 373: Combinatorial Algorithms, Fall 2000
Homework 0, due August 31, 2000 at the beginning of class
Name:
Net ID:
Alias:
Neatly print your name (frst name frst, with no comma), your network ID, and a short alias into
the boxes above.
Do not
sign
your name. Do
not
write your Social Security number.
Staple this
sheet oF paper to the top oF your homework.
Grades will be listed on the course web site by alias give us, so your alias should not resemble your
name or your Net ID. IF you don’t give yourselF an alias, we’ll give you one that you won’t like.
BeFore you do anything else, read the Homework Instructions and ±AQ on the CS 373 course web
page (http://www-courses.cs.uiuc.edu/
∼
cs373/hw/Faq.html), and then check the box below. This
web page gives instructions on how to write and submit homeworks—staple your solutions together
in order, write your name and netID on every page, don’t turn in source code, analyze everything,
use good English and good logic, and so Forth.
I have read the CS 373 Homework Instructions and ±AQ.
This homework tests your Familiarity with the prerequisite material From CS 173, CS 225, and
CS 273—many oF these problems have appeared on homeworks or exams in those classes—primarily
to help you identiFy gaps in your knowledge.
You are responsible for ±lling those gaps on your
own.
Parberry and Chapters 1–6 oF CLR should be suFfcient review, but you may want to consult
other texts as well.
Required Problems
1. Sort the Following 25 Functions From asymptotically smallest to asymptotically largest, indi-
cating ties iF there are any:
1
n
n
2
lg
n
lg(
n
lg
n
)
lg
∗
n
lg
∗
2
n
2
lg
∗
n
lg lg
∗
n
lg
∗
lg
n
n
lg
n
(lg
n
)
n
(lg
n
)
lg
n
n
1
/
lg
n
n
lg lg
n
log
1000
n
lg
1000
n
lg
(1000)
n
(
1 +
1
n
)
n
n
1
/
1000
To simpliFy notation, write
f
(
n
)
≪
g
(
n
)
to mean
f
(
n
) =
o
(
g
(
n
))
and
f
(
n
)
≡
g
(
n
)
to mean
f
(
n
) = Θ(
g
(
n
))
. ±or example, the Functions
n
2
,
n
,
(
n
2
)
,
n
3
could be sorted either as
n
≪
n
2
≡
(
n
2
)
≪
n
3
or as
n
≪
(
n
2
)
≡
n
2
≪
n
3
.