0% found this document useful (0 votes)
46 views

Programming Camp Syllabus

1. The document discusses various algorithms in computational geometry including the Graham scan algorithm for convex hulls in O(n log n) time, building 3D convex hulls in O(n^2) time, and the Bentley-Ottmann algorithm to find all line segment intersections in O(n log n + I) time. 2. It also covers rotating calipers technique, line sweep/plane sweep algorithms, Delaunay triangulation in O(n log n) time, Voronoi diagrams in O(n log n) time using Fortune's algorithm, and various problems related to computational geometry. 3. The document also lists string algorithms like the Knuth-Morris

Uploaded by

Vikash Kumar
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
46 views

Programming Camp Syllabus

1. The document discusses various algorithms in computational geometry including the Graham scan algorithm for convex hulls in O(n log n) time, building 3D convex hulls in O(n^2) time, and the Bentley-Ottmann algorithm to find all line segment intersections in O(n log n + I) time. 2. It also covers rotating calipers technique, line sweep/plane sweep algorithms, Delaunay triangulation in O(n log n) time, Voronoi diagrams in O(n log n) time using Fortune's algorithm, and various problems related to computational geometry. 3. The document also lists string algorithms like the Knuth-Morris

Uploaded by

Vikash Kumar
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

BasicG

eometry/Euclidean G
eometryordinate G
eometry/ [3Dvariants of
everything].
1. Computational G
eometry.
GrahamScana
lgorithm forC
onvex H
ull O
(n *
log(n)).
a. Online c
onstruction of3
D convex hull i
nO
(n^2).
b. Bentley Ottmann a
lgorithm t
olistallintersection p
oints o
fn
linesegments i
nO
((n+
I)
*
l
ogn).
Suggested Reading
1. http://softsurfer.com/Archive/algorithm_0108/algorithm_0108.htm
c. Rotating Calipers Technique.
Suggested Reading http://cgm.cs.mcgill.ca/~orm/rotcal.html
Problems
Refer t
he a
rticle f
oralistofp
roblems w
hich c
anbe
s
olved u
sing
Rotating C
alipers t
echnique.
d. LineS
weep/Plane S
weep a
lgorithms
Area/Perimeter o
fU
nion ofR
ectangles.
Closest pair o
fpoints.
Suggested Reading
1. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=lineSweep
Problems
Follow t
he tutorial forlistofp
roblems.
e. Areao
fUnion o
fC
ircles.
f. Delaunay Triangulation o
f n
points i
nO(n*
logn).
g. Voronoi Diagrams o
fnpoints in
O(n*logn) u
sing Fortunes a
lgorithm.
h. Pointina
polygon p
roblem
O(n) solution without preprocessing.
O(logn) algorithm with O
(n *
logn) preprocessing forconvex p
olygons.
i. Problems onc
omputational g
eometry

BSHEEP ,BULK ,SEGVIS ,CONDUIT ,RUNAWAY ,D
IRVS ,
RAIN1 ,SHAMAN ,T
CUTTER ,LITEPIPE ,
RHOMBS ,FSHEEP ,FLBRKLIN ,CERC07P ,BAC
,ALTARS ,CERC07C ,NECKLACE ,CH3D,
RECTANGL ,
POLYSSQ ,FOREST2 ,KPPOLY ,RAIN2 ,SEGMENTS ,ARCHPLG ,BALLOON ,CIRCLES ,C
OMPASS ,
EOWAMRT ,ICERINK onS
POJ.
CultureGrowth ,PolygonCover o
nTopcoder.
j. Suggested Reading
Computational Geometry: Algorithms anda
pplications. MarkD
eB
urg.

To
b
eD
onetill6thm
ay.
String A
lgorithm .
1. KnuthMorrisPrat talgorithm .
a. Problems NHAY, PERIOD o
nS
POJ.
b. Suggested R
eading

i. Cormen c
hapter o
nStrings.
ii. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=stringSear
ching
2. Aho C
orasick a
lgorithm.

2. Problems
WPUZZLES onS
POJ.
a. Suffix A
rrays
O(n^2 *
logn) Naive method o
fsuffix a
rray c
onstruction
O(n *
logn^2) method o
fsuffix array c
onstruction
O(n *
logn) method o
fsuffix a
rray construction.
O(n) methodof
suffix array c
onstruction
O(n) LCAp
reprocess onS
uffix A
rrays t
osolve a
variety of
stringproblems.
b. Suffix T
rees
O(n) construction o
f S
uffix t
rees u
sing Ukkonons a
lgorithm.
O(n) construction o
f S
uffix T
rees i
fp
rovided w
ith S
uffix A
rrays u
sing
Farachsalgorithm.
c. Suffix A
utomata
O(n) Suffix Automaton construction.
d. Dictionary OfB
asic Factors
O(n *
logn) method o
fDBFconstruction u
sing R
adix Sort.
e. Manachers algorithm t
ofind l
ength ofp
alindromic s
ubstring o
fa
string c
entered a
ta

position foreachposition int
hestring. R
untime >O
(n).
f. Searching andp
reprocessing R
egular Expressions c
onsisting of
?,
*.
g. Multidimensional pattern m
atching.
h. Problems onS
trings [can be
solved w
ith av
ariety oft
echniques]
DISUBSTR ,PLD,MSTRING ,REPEATS ,JEWELS ,ARCHIVER ,PROPKEY ,LITELANG ,E
MOTICON ,
WORDS ,AMCODES ,UCODES ,PT07H ,MINSEQ ,TOPALIN ,BWHEELER ,BEADS ,S
ARRAY ,L
CS,L
CS2 ,
SUBST1 ,PHRASES ,PRETILE onS
POJ
http://www.algorithmist.com/index.php/Category:String_algorithms

Till
1
1m
ay.

3. BasicG
raphs [beginner] .
a. Representation of
graphs as
adjacency list, a
djacency matrix, incidence m
atrix a
nd
edge
lista
nd u
ses o
fd
ifferent representations ind
ifferent s
cenarios.
b. Breadth First S
earch.


problems

1. PPATH ,ONEZERO ,
WATER o
nS
POJ
c. Depth
FirstSearch.
d. StronglyC
onnected C
omponents.
problems

1. TOUR a
ndBOTTOM o
nS
POJ.
e. Biconnected Components, Finding a
rticulation points
a
nd
bridges].
problems

1. RELINETS ,PT07A o
nS
POJ.
f. Dijkstraa
lgorithm

problems

1. SHPATH o
nS
POJ.
g. Floyd
Warshall a
lgorithm

problems

1. COURIER o
nSPOJ.
h. MinimumS
panning T
ree
problems

1. BLINNET o
nSPOJ.
i. Floodfill a
lgorithm
j. Topological sort
k. BellmanFord algorithm.
l. Euler
Tour/Path.
problems
WORDS1 on
SPOJ.
m. Suggestedreading form
ost o
f
thet
opicsi
n
G
rapha
lgorithms

http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=graphsDataStrucs1 .
Also r
efer t
ot
hetutorial f
or p
roblemsc
oncerning
these
techniques.
Cormen chapter 22
to
24.

Till
13
may.(before coming iitkits
hould b
ed
one:))

4. Flown
etworks/ m
atching e
tcetc. [
Intermediate/Advanced].
a. Maximumflow u
sing F
ordFulkerson Method.
Suggested Reading
1. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=maxFlow
problems
TAXI,POTHOLE ,IM,QUEST4 ,
MUDDY ,E
N,C
ABLETV ,S
TEAD ,
NETADMIN
,C
OCONUTS
,
OPTM o
nS
POJ.
b. Maximumflow u
sing D
inics A
lgorithm.
Problems
PROFIT ons
poj.
c. MinimumCost M
aximum Flow.
Successive Shortest path a
lgorithm.
Cycle Cancelling a
lgorithm.
Suggested Reading
1. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=minimumCostFlow1
d. Maximumweighted B
ipartite M
atching (
Kuhn M
unkras a
lgorithm/Hungarian M
ethod)
problems
GREED ,
SCITIES ,TOURSon
S
POJ |

http://www.topcoder.com/stat?c=problem_statement&pm=8143
e. StoerW
agner m
incut algorithm.
f. Hopcroft Karpbipartite matching a
lgorithm.
1. problems ANGELS onS
POJ.
g. Maximummatching i
ng
eneral graph (blossom shrinking)
h. GomoryHu T
rees.aa
i) P
roblems
MCQUERY on
Spoj.
i. ChinesePostman Problem.
problems
http://acm.uva.es/archive/nuevoportal/data/problem.php?p=4039
Suggested Reading http://eie507.eie.polyu.edu.hk/sssubmission/B7a/
j. Suggested R
eading fort
he f
ull c
ategory
>
Network flowAlgorithms andA
pplications b
yA
huja
Cormen b
ook c
hapter 25.

Till
2
0t
hm
ay.

5. Dynamic P
rogramming.
a. Suggested R
eading Dynamic Programming(DP) a
s
at
abulation method
Cormen c
hapter on
DP
b. Standard problems (
you s
hould really f
eel c
omfortable w
itht
hese t
ypes)
http://www.topcoder.com/stat?c=problem_statement&pm=8570&rd=12012&rm=269199&cr=7581406
http://www.topcoder.com/stat?c=problem_statement&pm=10765&rd=14183
c. States
pace r
eduction
http://www.topcoder.com/stat?c=problem_statement&pm=10902
http://www.topcoder.com/stat?c=problem_statement&pm=3001
http://www.topcoder.com/stat?c=problem_statement&pm=8605&rd=12012&rm=269199&cr=7581406
d. Solvinginther
everse
e asier characterizations l
ooking f
romt
he e
nd
http://www.spoj.pl/problems/MUSKET
http://www.topcoder.com/stat?c=problem_statement&pm=5908
e. Counting/optimizing arrangements s
atisfying s
omes
pecified properties

http://www.topcoder.com/stat?c=problem_statement&pm=8306
http://www.topcoder.com/stat?c=problem_statement&pm=784
9Strategies andexpected v
alues
http://www.topcoder.com/stat?c=problem_statement&pm=10765&rd=14183
http://www.topcoder.com/stat?c=problem_statement&pm=10806
http://www.topcoder.com/stat?c=problem_statement&pm=7828
http://www.topcoder.com/stat?c=problem_statement&pm=7316
f. DP
o
n
probability s
paces
http://www.topcoder.com/stat?c=problem_statement&pm=7422
http://www.topcoder.com/stat?c=problem_statement&pm=2959
http://www.topcoder.com/stat?c=problem_statement&pm=10335
g. DP
o
n
trees
http://www.topcoder.com/stat?c=problem_statement&pm=10800
http://www.topcoder.com/stat?c=problem_statement&pm=10737
http://www.topcoder.com/stat?c=problem_solution&rm=266678&rd=10958&pm=8266&cr=7581406
h. DP
w
ithdatastructures
http://www.spoj.pl/problems/INCSEQ/
http://www.spoj.pl/problems/INCDSEQ/
http://www.spoj.pl/problems/LIS2/
http://www.topcoder.com/stat?c=problem_statement&pm=1986
i. Symmetric c
haracterization o
f D
P
state
http://www.topcoder.com/stat?c=problem_statement&pm=8610
j. A
g
oodc
ollection o
fproblems
http://codeforces.com/blog/entry/325
http://problemclassifier.appspot.com/index.jsp?search=dp&usr=

T
ill
2
8
t
hm
ay.
6. Greedy.
a. SuggestedReading

Chapter o
nG
reedy a
lgorithms i
nC
ormen.
http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=greedyAlg
b. problems
refertot
het
opcoder tutorial.
7. Number
T
heory.
a. Modulusa
rithmetic basicp
ostulates [
Including m
odular l
inearequations,Continued
fractiona
ndP
ell's e
quation]
Suggested R
eading

1. Chapter 1fromNumber
Theory forC
omputing b
y
S
YY
an[
Recommended
]

2. 31.1, 3
1.3 a
nd31.4
f
rom C
ormen
3. www.topcoder.com/tc?module=Static&d1=tutorials&d2=primeNumbers
Problems
1. http://projecteuler.net/index.php?section=problems&id=64
2. http://projecteuler.net/index.php?section=problems&id=65
3. http://projecteuler.net/index.php?section=problems&id=66
4. http://www.topcoder.com/stat?c=problem_statement&pm=6408&rd=9826
5. http://www.topcoder.com/stat?c=problem_statement&pm=2342
b. Fermat'st
heorem, E
uler T
otient t
heorem (
totientfunction,order,
p
rimitiver
oots
)
Suggested R
eading
1. 1.6,2.2f
rom N
umberT
heory b
yS
YY
an
2. 31.6,3
1.7 fromC
ormen

Problems
1. http://projecteuler.net/index.php?section=problems&id=70
2. http://www.spoj.pl/problems/NDIVPHI/
c. Chineseremaindertheorem
Suggested R
eading
1. 31.5
fromC
ormen
2. 1.6
from
Number T
heory b
yS
YY
an
Problems
1. ProjectE
uler 2
71
2. http://www.topcoder.com/stat?c=problem_statement&pm=10551&rd=13903
d. Primality t
ests

Deterministic O
(sqrt(n) )a
pproach
Probabilistic p
rimality tests
Fermatp
rimality
t
est,
MillerRabin
P
rimality
t
est
1. Suggested R
eading

a. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=primalityTesting
b. Cormen 3
1.8
c. 2.2fromN
umber T
heory by
S
YY
an
2. Problems
a. PON, P
RIC,SOLSTRAS on
SPOJ
b. http://www.topcoder.com/stat?c=problem_statement&pm=4515
e. Primeg
eneration t
echniques
Sieve o
fE
rastothenes
Suggested P
roblems
PRIME1 o
nS
POJ
f. GCD
usinge
uclidean m
ethod
Suggested R
eading

1. 31.2 Cormen
Problems

1. GCD o
nS
POJ
2. http://uva.onlinejudge.org/external/114/11424.html
g. Logarithmic E
xponentiation
Suggested Reading
1. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=primalityTesting
h. IntegerFactorization
Naive O
(sqrt(n)) m
ethod
Pollard Rhof
actorization
Suggested Reading
1. 2.3 f
rom N
umber Theory SY
Yan
2. 31.9 Cormen
Problems

1. http://www.topcoder.com/stat?c=problem_statement&pm=2986&rd=5862
2. http://www.spoj.pl/problems/DIVSUM2/
3. http://www.topcoder.com/stat?c=problem_statement&pm=4481&rd=6538
i. Stirling n
umbers
j. Wilsont
heorem
nCr %
pinO
(p) p
reprocess andO(logn)
query
k. LucasT
heorem
l. Suggested Reading forN
umber T
heory

Number t
heory f
orcomputing b
yS
ongYYan[Simple
b
ookd
escribing c
onceptsi
n
details ]
Concepts a
realsosuperficially covered i
nChapter3
1o
f
I
ntroduction t
o
A
lgorithms
by
Cormen
http://www.codechef.com/wiki/tutorialnumbertheory
http://www.algorithmist.com/index.php/Category:Number_Theory
m. Problems o
nN
umber T
heory
http://www.algorithmist.com/index.php/Category:Number_Theory
http://problemclassifier.appspot.com/index.jsp?search=number&usr=
T
ill
6
th
june.
8. Math
(
Probability, C
ounting, G
ame T
heory, GroupTheory, Generatingf
unctions, P
ermutation
Cycles,
LinearAlgebra)
a. Probability.
Syllabus
Basic p
robability andConditional p
robability
1. Suggested problems
a. http://www.spoj.pl/problems/CT16E/
b. http://www.spoj.pl/problems/CHICAGO/
Random v
ariables, probability generating functions
Mathematical expectation +Linearity o
fe
xpectation
1. Suggested problems
a. http://www.spoj.pl/problems/FAVDICE/
b. http://www.topcoder.com/stat?c=problem_statement&pm=10744
Special discrete a
nd c
ontinuous probability d
istributions
1. Bernoulli, Binomial, Poisson, n
ormal distribution
2. Suggested Problem
a. http://acm.sgu.ru/problem.php?contest=0&problem=498
Suggested Readings
1. Cormen a
ppendix C(very b
asic)
2. Topcoder probabilty t
utorial
http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=probabilities
3. http://en.wikipedia.org/wiki/Random_variable
4. http://en.wikipedia.org/wiki/Expected_value
5. William Feller, Ani
ntroduction t
op
robability t
heorya
nd
its
applications
b. Counting
Syllabus
Basic p
rinciples
Pigeon h
ole p
rinciple, a
ddition, m
ultiplication rules
1. Suggested problems
a. http://acm.timus.ru/problem.aspx?space=1&num=1690
b. http://www.topcoder.com/stat?c=problem_statement&pm=10805
3. Suggested readings
a. http://en.wikipedia.org/wiki/Combinatorial_principles
b. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=combinatorics
c. http://www.maa.org/editorial/knot/pigeonhole.html
Inclusionexclusion
1. Suggested readings
a. http://en.wikipedia.org/wiki/Inclusionexclusion_principle
2. Suggested problems
a. http://www.topcoder.com/stat?c=problem_statement&pm=4463&rd=6536
b. http://www.topcoder.com/stat?c=problem_statement&pm=10238
Special numbers

1. Suggested r
eading
Stirling, e
urlerian, harmonic,b
ernoulli,f
ibonnacci
numbers
a. http://en.wikipedia.org/wiki/Stirling_number
b. http://en.wikipedia.org/wiki/Eulerian_numbers
c. http://en.wikipedia.org/wiki/Harmonic_series_(mathematics)
d. http://en.wikipedia.org/wiki/Bernoulli_number
e. http://en.wikipedia.org/wiki/Fibonnaci_numbers
f. Concrete m
athematics byK
nuth
2. Suggested p
roblems
a. http://www.topcoder.com/stat?c=problem_statement&pm=1643
b. http://www.topcoder.com/stat?c=problem_statement&pm=8202&rd=11125
c. http://www.topcoder.com/stat?c=problem_statement&pm=8725
d. http://www.topcoder.com/stat?c=problem_statement&pm=2292&rd=10709
Advanced c
ounting t
echniques
Polya c
ounting, b
urnsideslemma
1. Suggested r
eading
a. http://en.wikipedia.org/wiki/Burnside's_lemma
b. http://petrmitrichev.blogspot.com/2008/11/burnsideslemma.html
2. Suggested P
roblems
a. http://www.topcoder.com/stat?c=problem_statement&pm=9975
b. http://www.spoj.pl/problems/TRANSP/
c
.G
ame
t
heory
Syllabus
Basic p
rinciples a
ndN
im g
ame
1. Spraguegrundytheorem, grundy n
umbers
2. Suggested r
eadings
a. http://en.wikipedia.org/wiki/Sprague%E2%80%93Grundy_theorem
b. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=algorithmGames
c. http://www.ams.org/samplings/featurecolumn/fcarcgames1
d. http://www.codechef.com/wiki/tutorialgametheory
3. Suggested p
roblems
a. http://www.topcoder.com/stat?c=problem_statement&pm=3491&rd=6517
b. http://www.topcoder.com/stat?c=problem_statement&pm=3491&rd=6517
Hackenbush
1. Suggested r
eadings
a. http://en.wikipedia.org/wiki/Hackenbush
b. http://www.ams.org/samplings/featurecolumn/fcarcpartizan1
2. Suggested p
roblems
a. http://www.cs.caltech.edu/ipsc/problems/g.html
b. http://www.spoj.pl/problems/PT07A/
d.
L
inear
A
lgebra
Syllabus
Matrix O
perations
1. Additionands
ubtraction o
f m
atrices
a. Suggested Reading
i. Cormen 2
8.1
2. Multiplication (Strassen's a
lgorithm )
,
l
ogarithmic exponentiation
a. Suggested reading
i. Cormen 2
8.2
ii. Linear Algebra b
yK
enneth H
offman S
ection1
.6
b. Problems
i. http://uva.onlinejudge.org/external/111/11149.html
3. Matrixt
ransformations [
Transpose, R
otation of
M
atrix,R
epresentingL
inear
transformations u
sing m
atrix ]
a. Suggested Reading
i. Linear A
lgebra B
yKenneth H
offman S
ection3
.1,3.2,3.4,3.7
b. Problems
i. http://www.topcoder.com/stat?c=problem_statement&pm=6877
ii. JPIX o
nS
poj
4. Determinant ,Ranka
ndInverse of
M
atrix[G
ausseanE
limination,
G
aussJ
ordan
Elimination]
a. Suggested Reading
i. 28.4 Cormen
ii. Linear Algebra b
yK
enneth C
hapter 1

b. Problems
i. http://www.topcoder.com/stat?c=problem_statement&pm=8174

ii. http://www.topcoder.com/stat?c=problem_statement&pm=6407&rd=9986
iii. http://www.topcoder.com/stat?c=problem_statement&pm=8587
iv. HIGH on
Spoj
5. Solving system o
flinear e
quations
a. Suggested R
eading
i. 28.3 C
ormen
ii. Linear A
lgebra by
KennethChapter 1

b. Problems
i. http://www.topcoder.com/stat?c=problem_statement&pm=3942&rd=6520
6. Using m
atrix exponentiation to
solver
ecurrences
a. Suggested R
eading
i. http://www.topcoder.com/tc?module=Static&d1=features&d2=010408
b. Problems
i. REC, R
ABBIT1 ,
PLHOP o
ns
poj
ii. http://www.topcoder.com/stat?c=problem_statement&pm=6386 ,

http://www.topcoder.com/stat?c=problem_statement&pm=7262,
http://www.topcoder.com/stat?c=problem_statement&pm=6877
7. Eigen v
alues andE
igen vectors
a. Problems
i. http://www.topcoder.com/stat?c=problem_statement&pm=2423&rd=4780
Polynomials
1. Roots o
fa
polynomial [
Prime factorization of
a
p
olynomial,
I
nteger
roots
of
a

polynomial, A
llrealroots o
fa
polynomial ]
a. Problems
i. http://www.topcoder.com/stat?c=problem_statement&pm=8273&rd=10798
ii. POLYEQ ,
ROOTCIPH on
Spoj
2. Lagrange I
nterpolation
a. Problems
i. http://www.topcoder.com/stat?c=problem_statement&pm=10239
ii. http://www.topcoder.com/stat?c=problem_statement&pm=8725
e
.
P
ermutation c
ycles
Suggested R
eading
1. Arto
fComputer Programming by
KnuthV
ol. 3

Problems
1. ShuffleMethod, P
ermutation a
ndWordGame o
nt
opcoder.
f
.
G
roup
Theory
Burnside Lemma, P
olyas t
heorem
1. Suggested Reading
a. Hernstein's t
opics i
na
lgebra
b. http://petrmitrichev.blogspot.com/2008/11/burnsideslemma.html
2. Problems
a. TRANSP o
ns
poj
b. http://www.topcoder.com/stat?c=problem_statement&pm=9975
b. Generatingf
unctions
Suggested R
eading
1. Herbert Wilf's g
enerating functionology/
2. Robert S
edgewick a
ndFlajoulet's C
ombinatorial a
nalysis

9. Data
S
tructures.
i. Basic
a. Arrays/Stacks/Queues:

Problems
1. https://www.spoj.pl/problems/STPAR/
2. https://www.spoj.pl/problems/SHOP/
3. https://www.spoj.pl/problems/WATER/
Reading:
1. CLRS:
section
10.1
2. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=dataStructures

b
.
S
ingly/DoublyLinked
L
ist:

Problems
1. h
ttps://www.spoj.pl/problems/POSTERS/
Reading:
CLRS:s
ection
10.2,M
ark
A
llenW
eiesC
hapter3
c
.
H
ash
T
ables:

Problems
1. https://www.spoj.pl/problems/HASHIT/
2. https://www.spoj.pl/problems/CUCKOO/
Reading:
CLRS:C
hapter
11,
Mark
A
llen
Weies
Chapter
5

d.
Circular l
inked list/
queue
Problems
1. https://www.spoj.pl/problems/CTRICK/
e.
Binary/nary Trees
Reading
1. CLRS: section 1
0.4
2. CLRS: Chapter 1
2
3. Mark A
llen W
eies C
hapter 4

4. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=binarySearchRedBlack
f.
Heaps
Problems
1. https://www.spoj.pl/problems/PRO/
2. https://www.spoj.pl/problems/EXPEDI/
Reading :MarkA
llen W
eies C
hapter 6
i
i.
Advanced
a. Trie(
Keyword t
re
Problems
1. https://www.spoj.pl/problems/MORSE/
2. https://www.spoj.pl/problems/EMOTICON/
Reading
b. Interval t
rees /S
egment Trees
Problems
1. https://www.spoj.pl/problems/ORDERS/
2. https://www.spoj.pl/problems/FREQUENT/
Reading
c. Fenwick(Binary Indexed) t
rees
Problems
1. https://www.spoj.pl/problems/MATSUM/
Reading: h
ttp://www.topcoder.com/tc?module=Static&d1=tutorials&d2=binaryIndexedTrees
d. Disjoint d
ata s
tructures
Problems
1. https://www.spoj.pl/problems/BLINNET/
2. https://www.spoj.pl/problems/CHAIN/
Reading:
1. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=disjointDataStructure
2. Mark A
llen W
eies C
hapter 8

e. Rangeminimum Q
uery(RMQ)
Problems
1. https://www.spoj.pl/problems/GSS1/
Reading
http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=lowestCommonAncestor
f. Customized interval/segment trees(
Augmented DS)
Problems
1. https://www.spoj.pl/problems/GSS3/
2. https://www.spoj.pl/problems/RRSCHED/
Reading: C
LRS: C
hapter 14
(
augmented DS)
g.
A
VLT
rees
Problems
1.
https://www.spoj.pl/problems/ORDERS/
Reading

i
ii.
Miscellaneous (Notto
be
c
overed)
a. SplayTrees
b. B/B+T
rees
c. kdT
rees
d. Redblack Trees
e. SkipL
ist
f. Binomial/ Fibonacci h
eaps

i
v.
Exercices
1. https://www.spoj.pl/problems/LAZYPROG /(Hint: Heaps)t
2. https://www.spoj.pl/problems/HELPR2D2/ (
Hint: I
ntervalT
rees)
3. https://www.spoj.pl/problems/SAM/ (
Hint: Heaps)
4. https://www.spoj.pl/problems/PRHYME/ (
Hint: T
rie)
5. https://www.spoj.pl/problems/HEAPULM/ (
Hint: I
ntervalTrees)
6. https://www.spoj.pl/problems/CORNET/ (
Hint: D
isjoint)

7. https://www.spoj.pl/problems/EXPAND/
8. https://www.spoj.pl/problems/WPUZZLES/
9. https://www.spoj.pl/problems/LIS2/

10. Search T
echniques/Bruteforce w
riting t
echniques/Randomized a
lgorithms.
a. Backtracking [Beginner].
problems
>
1. Nq
ueens problems

2. Knights Tour
3. Sudoku P
roblem
4. Tiling P
roblem.
5. 15puzzle.
b. DancingLinksa
ndAlgorithm Xg
iven by
K
nuth [
Advanced]
problems
PRLGAME, SUDOKU, NQUEEN o
nS
POJ
Suggested reading

1. http://wwwcsfaculty.stanford.edu/~uno/papers/dancingcolor.ps.gz
c. BinaryS
earch
[Beginner].
problems
AGGRCOW o
nS
POJ. Referthet
utorial f
or
more
problems.
finding a
llrealrootsofa
polynomial using b
inarys
earch.[intermediate].
Suggested Reading

1. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=binarySearch
d. TernarySearch[
Intermediate].
problems

1. http://www.spoj.pl/problems/KPPOLY/
2. http://www.codechef.com/DEC09/problems/K1/
3. http://www.topcoder.com/stat?c=problem_statement&pm=4705&rd=7993
4. http://www.topcoder.com/stat?c=problem_statement&pm=7741&rd=10671
5. http://www.topcoder.com/stat?c=problem_statement&pm=6464&rd=9994
6. http://www.topcoder.com/stat?c=problem_statement&pm=3501&rd=6529
7. http://www.topcoder.com/stat?c=problem_statement&pm=4567&rd=6539
e. Meeti
n
the
middle [
Intermediate].
problems

1. http://www.spoj.pl/problems/MAXISET/
2. Hill C
limbing [
Advanced].
f. RegularIteration tor
each a
fixed p
oint [
Advanced].
NewtonRaphson method t
of
ind rooto
fa
mathematical f
unction.
Iterations t
os
olve linear n
on h
omogeneous s
ystemo
fe
quations.
General
programming issues in
contests
>
g. Arithmetic P
recision [Beginner].
Suggested Reading

1. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=integersReals
h. Representing setswithbitmasks a
ndmanipulating b
itmasks
[
Beginner].
Suggested Reading

1. http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=bitManipulation
problems
refer to
thet
utorial l
ink i
nS
uggested readings
ection.

You might also like