Tea as ed - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Tea as ed

Description:

?? ??? a ape????eta? se ?s??? f??t?t?? ?????? ?a ap??t?s??? as???? ... Computer Science, volume 2976, Buenos Aires, Argentina, April 5-8, 2004, pages 466-473. ... – PowerPoint PPT presentation

Number of Views:268
Avg rating:3.0/5.0
Slides: 21
Provided by: kostast
Category:

less

Transcript and Presenter's Notes

Title: Tea as ed


1
Te???a ?as???? ??µ?? ?ed?µ????
??d?s???te? ?a???? ???st??, ?sa?a??d??
??a??s??? e-mail makri_at_ceid.upatras.gr,
tsak_at_ceid.upatras.gr ??das?a??a ?e?t??a
1300-1500 ?200
2
?e????af? t?? ?a??µat??
  • ?? µ???µa ape????eta? se ?s??? f??t?t?? ?????? ?a
    ap??t?s??? ßas???? ???se?? ??a t?? pe????? t??
    d?µ?? ded?µ???? ?a? ??a t?? a??????µ???? te??????
    p?? ????? p??ta?e? ??a t?? ap?d?t??? s?ed?as? ?a?
    ???p???s? t???. 
  • ?? µ???µa ap?te?e? s????e?a t?? p??pt???a???
    µa??µ?t?? ??µ?? ?ed?µ????, ???????µ??,
    ???????µ??e? ??µ?? ?a? pa???e? st??? f??t?t?? ta
    ?at?????a ef?d?a ??a t?? s?ed?as? p???p?????
    d?µ?? ded?µ???? p?? µp????? ?a ß???? ???s? se
    d??f??e? efa?µ????.

3
??t??e?µe?a p?? ?a??pt??ta?
  • 1.           ???t??a ?p?????sµ?? ?a? µet?????
    ???????? ?a? ??????? p???p????t?ta?
  • 2.        ??a???????? ??µ?? ?ed?µ????
  • 3.        ???????µ?? ?a? ??µ??  ?ed?µ???? se
    p??ß??µata d?a?e???s?? de?d????? ??af?µ?t??.
  • 4.          ????? ???te?a??t?ta? ?a?
    ??t???a??µe?a ???t?a
  • 5.         ???????µ?? ???ta??? ?a? ??µ??
    ?a??µat?? st? RAM ???t??a ?p?????sµ??.

4
??ad??ast???
  • ???tas? (p??f?????)
  • ???as?a
  • ?a???s?as?
  • G?apt? ??af???
  • ?e????? ?a?µ??
  • ?µ??????sµa a? ßa?µ?? e??tas?? gt 5

5
??sta ???as???
  • Data Structures for Tree Manipulation
  • D. Harel and R.E. Tarjan. Fast Algorithms for
    finding nearest common ancestors. SIAM J.
    Computing , 13(2)338-355, 1984.
  • A.K. Tsakalidis. The Nearest Common Ancestor in a
    Dynamic Tree, Acta Informatica 25, 37-54 (1988).
  • S. Alstrup and M. Thorup, Optimal Pointer
    Algorithms for Finding Nearest Common Ancestors
    in Dynamic Trees, Journal of Algorithms, 35(2)
    169-188 (2000)
  • A.L. Buchsbaum, H. Kaplan, A. Rogers and J.R.
    Westbrook, Linear-time pointer machine algorithms
    for lca's, mst verification, and dominators, In
    Annual ACM Symposium on the Theory of Computing
    (STOC), 30, 1998.
  • R. Cole and R. Hariharan, Dynamic lca queries on
    trees, In Annual ACM-SIAM Symposium on Discrete
    Algorithms (SODA), 10, 1999.
  • Rajamani Sundar, Robert Endre Tarjan Unique
    Binary Search Tree Representations and
    Equality-testing of Sets and Sequences STOC 1990
    18-25
  • Kurt Mehlhorn, R. Sundar, Christian Uhrig
    Maintaining Dynamic Sequences under Equality
    Tests in Polylogarithmic Time. Algorithmica
    17(2) 183-198 (1997).
  • Richard Cole, Ramesh Hariharan Tree Pattern
    Matching to Subset Matching in Linear Time. SIAM
    J. Comput. 32(4) 1056-1066 (2003)

6
  • Persistence
  • J. R. Driscoll, N. Sarnak, D. Sleator, and R.
    Tarjan. Making data structures persistent. J. of
    Computer and System Science, 3886-124, 1989.
  • J. Driscoll, D. Sleator, and R. Tarjan. Fully
    persistent lists with catenation. Journal of the
    ACM , 41(5)943-959, 1994.
  • L. Buchsbaum and R. E. Tarjan. Confluently
    persistent deques via data structural
    bootstrapping. J. of Algorithms , 18513-547,
    1995.
  • R. Sundar A. L. Buchsbaum and R. E. Tarjan. Data
    structural bootstrapping, linear path
    compression, and catenable heap ordered double
    ended queues. SIAM J. Computing ,
    24(6)1190-1206, 1995.
  • H. Kaplan and R. E. Tarjan. Persistent lists
    with catenation via recursive slow-down. In
    Proceedings of the 27th Annual ACM Symposium on
    Theory of Computing , pages 93-102. ACM Press,
    1995.
  • H. Kaplan and R. E. Tarjan. Purely functional
    representations of catenable sorted lists. In
    Proceedings of the 28th Annual ACM Symposium on
    Theory of Computing , pages 202-211. ACM Press ,
    1996.
  • A. Fiat, H. Kaplan, Making Data Structures
    Confluently Persistent, ACM SODA 2001.

7
  • Search Trees and Priority Queues
  • A.K. Tsakalidis, AVL-trees for localized search.
    Information and Control , 67173-194, 1985.
  • R. Fleischer, A simple balanced search tree with
    O(1) worst-case update time. International
    Journal of Foundations of Computer Science,
    7137-149, 1996
  • G. S. Brodal. Finger Search Trees with Constant
    Insertion Time. In Proc. 9th Annual ACM-SIAM
    Symposium on Discrete Algorithms, pages 540-549,
    1998.
  •  M. A. Bender and M. Farach-Colton. The Level
    Ancestor Problem Simplified. LATIN, pages
    508-515, 2002.
  • M. A. Bender, R. Cole, E. Demaine, M.
    Farach-Colton, and J. Zito. Two Simplified
    Algorithms for Maintaining Order in a List.
    Proceedings of the 10th European Symposium on
    Algorithms (ESA), pages 152-164, 2002.
  • Daniel Dominic Sleator and Robert Endre Tarjan.
    Self-adjusting binary search trees. Journal of
    the ACM , 32(3)652-686, July 1985.
  • John Iacono, Alternatives to Splay Trees with
    O(logn) Worst-Case Access Times, ACM/SIAM SODA
    2001, 516-522.
  • Mihai Badoiu and Erik D. Demaine, A Simplified
    and Dynamic Unified Structure,  in Proceedings of
    the 6th Latin American Symposium on Theoretical
    Informatics (LATIN 2004), Lecture Notes in
    Computer Science, volume 2976, Buenos Aires,
    Argentina, April 5-8, 2004, pages 466-473.
  • D.E. Demaine, D. Harmon, J. Iacono, M. Patrascu,
    (2004), Dynamic Optimality? Almost, IEEE Symp. on
    the Foundations of Computer Science, 45th, Rome,
    Italy, Oct. 17?19, pp. 484?490.

8
  • RAM Algorithms
  • M.L. Fredman and D.E. Willard. Surpassing the
    information theoretic bound with fusion trees.
    Journal of Computer and System Sciences , 
    47424-436, 1993.
  • M.L. Fredman and D.E. Willard. Trans-dichotomous
    Algorithms for Minimum Spanning Trees and
    Shortest Paths, Journal of Computer and System
    Sciences , 48533-551, 1994.
  • H. Gabow, R. Tarjan A Linear-Time Algorithm for
    a Special Case of Disjoint Set Union Journal of
    Computer and System Sciences 30(209-220) 1985 .
  • Arne Andersson, Mikkel Thorup, Dynamic Ordered
    Sets with Exponential Search Tree, ACM STOC 2000,
    pp.335-342.
  • A. Andersson. Faster deterministic sorting and
    searching in linear space, Proc. 37th FOCS, pages
    135?141, 1996.
  • Yijie Han Improved fast integer sorting in
    linear space. SODA 2001 793-796
  • Yijie Han Deterministic sorting in O(nloglogn)
    time and linear space. J. Algorithms 50(1)
    96-105 (2004)
  • Ran Mendelson, Mikkel Thorup, Uri Zwick
    Meldable RAM priority queues and minimum directed
    spanning trees. SODA 2004 40-48
  • Ran Mendelson, Robert Endre Tarjan, Mikkel
    Thorup, Uri Zwick Melding Priority Queues. SWAT
    2004 223-235

9
??sa??????
  • ??µ? ?ed?µ???? ? s???e???µ??? ???p???s? e???
    s???? eµfa????µe??? ?f???µ???? ??p?? ?ed?µ????.
  • ?f???µ???? ??p?? ?ed?µ???? e??a? ??a s????? µa??
    µe µ?a s?????? p???e?? sta st???e?a t?? s??????.
  • ?a?ade??µata ??µ??
  • -- ?e???? (ßas???? p???e?? ? e?sa????/d?a??af?
    st???e??? ?a? ? ??e???? a???e?/de? a???e?)
  • -- ????? ???te?a??t?ta? (ßas???? p???e?? ? ???es?
    st???e???, ? e??es? ?a? d?a??af? t?? e?a??st??)

10
???t??a ???a???
  • ???t??? ???a??? ?e??t?? (Pointer Machine) ?
    µ??µ? ap?te?e?ta? ap? s?????? e???af??, µe ???e
    e???af? ?a ap?te?e?ta? ap? µ?a s?????? ap? ?e???.
    ???e ?e?? ??e? ??a t?p? (pointer, integer, real)
    ?a? ? p??sp??as? ?e???? ???eta? µe ???s? de??t??.
  • RAM ???t??? ?p?????sµ?? ? µ??µ? ap?te?e?ta? ap?
    ??a p??a?a ap? ?e???, ?p?? ???e ?e??
    p??spe?a??eta? µe t? d?e????s? t??. ?p???t??µe
    ?t? ???e ?e?? µp??e? ?a pe????e? a???µ???
    a??a??et?? µe?????? ?a? ?t? ?? ßas????
    a???µ?t???? p???e?? ?a? p???e?? de??t?? pa??????
    sta?e?? ????? (uniform cost assumption).
  • ?et????? ??t?µ?s?? ?p?d?s??
  • ??????, ??????? p???p????t?ta.

11
??????? ????p????t?ta
  • ?????s? µ?s?? pe??pt?s?? (average case analysis)
    µ?a p??a??t??? ?ata??µ? t??eta? st?? p???e?? e???
    af???µ???? t?p?? ded?µ???? ?a? t? µ?s? ??st??
    t?? p???e?? ?p??????eta?.
  • ?????s? ?e???te??? ?e??pt?s?? (worst case
    analysis) ?p????????ta? p???p????t?te?
    ?e???te??? pe??pt?s?? ??a ???e p????.
  • ?????s? ?p?µe??sµ???? ????p????t?ta?
    ?p??????eta? t? s??????? ??st?? µ?a? a???????a?
    p???e?? ?a? ep?µe???eta? t? ??st?? se ?a?eµ?a
    p????.

12
?e?????? ??t?µ?s?? ????p????t?ta?
  • ????d?? ?????s?? - ?µes?? ?p?????sµ?? t??
    ??st??? µ?a? a???????a? p???e?? µ?s? e???
    s??d?ast???? t?p??
  • ????d?? ??ape??t? Te????µe ?t? ?p???e? ??a?
    t?ape????? ???a??asµ?? s??dedeµ???? µe ???e d?µ?
    ded?µ???? p?? a?a????µe. Se ???e p????
    s?s?et????µe µ?a e????e?a a??????? ?a? ?at??es??
    ???µ?t??.
  • ????d?? F?s???? ??a??t??µe se ???e st?µ??t?p?
    t?? d?µ?? µ?a s????t?s? p?? ?aµß??e? ?et????
    p?a?µat???? t?µ?? ?a? ???µ??eta? s????t?s?
    d??aµ????.

13
?? p??ß??µa t?? ?e?????
  • ???sµ??
  • ??d? ??µ??
  • Comparison Based ??µ?? ?ed?µ????
  • Representation Based ??µ?? ?ed?µ????

14
??d? ??µ?? ?ed?µ????
  • Implicit ??µ?? ?ed?µ???? (p??a?a? st???e???)
  • ???s? ?e??st?ef?µe??? ??st??, ?µµes?
    ??d???p???s? de??t?? -gt ?((logn)2) ????? a??
    ????µ? ?a? p???? e??µ???s?? (Munro)
  • O(logn) ????? a?? ????µ? ?a? p???? e??µ???s??
    (Francescinni)
  • ??d? ??µ??
  • Comparison Based ??µ?? ?ed?µ????
  • - Static
  • - Dynamic (weight balanced, height balanced)
  • Representation Based ??µ?? ?ed?µ????
  • - Interpolation Search
  • - Tries
  • - Hashing

15
?? Weighted Dictionary ???ß??µa
  • ????e??
  • Access(x,S), O(log(W/w))
  • Insert(x,S) O(log(Ww/min(w,w-,w))
  • Delete(x,S) O(log(W/min(w,w-))
  • Join(S1,S2) O(log((w1w2)/w))
  • Split(x,S) O(log(W/w))
  • ChangeWeight(x,S,d) ?(log(Wd)/w))
  • Amortized complexity a? ???s?µ?p??????? splay
    trees.
  • Worst Case Complexity a? ???s?µ?p??????? biased
    trees.

16
Union-Split-Find ???ß??µa
  • ??a?e?????µaste µ?a d?aµ???s? t?? s?µpa?t??
    U1,..,nµe t?? ?p?st????? t?? a????????
    p???e??
  • Find(x) ep?st?e?e t? ???µa t?? s?????? p??
    pe????e? t? x
  • Union(A,B) s?????e?se ta d?? s????a ?,? se ??a
    ??? s?????\
  • Split(A,x) d??spase t? ? se d?? ?p?s????a
  • Union-Find p??ß??µa, Split-Find p??ß??µa
  • ?(a(m,n))minz?1 A(z,4?m/n?)gtlogn
  • ?p??
  • A(i,0)1, ??a ???e i
  • ?(0,x)2x, ??a ???e x
  • ?(i1,x1)A(i,A(i1,x)) ??a ???e i,x.
  • Interval Union Split Find ???ß??µa
  • Upper and Lower Bounded by ?(loglogn)
  • vEB Data Structure

17
????? ???te?a??t?ta?
  • ?as???? p???e??
  • Makequeue
  • Insert(i,h)
  • Findmin(h)
  • Deleremin(h)
  • Meld(h1,h2)
  • Decreasekey(d,i,h)
  • Delete(i,h)
  • Heap-ordered(2-3) d??t?a, leftist d??t?a,
    binomial queues, self adjusting heaps, pairing
    heaps, Fibonacci Heaps, Relaxed Heaps.

18
(No Transcript)
19
Nearest Common Ancestor
  • static off-line version
  • static on-line version
  • linking roots version
  • linking and cutting version
  • dynamic trees version

20
?e?????? ???aµ?p???s??
  • Te??e?ste µ?a d?µ? µe ????? p??epe?e??as?a?
    Ps(n), ????? e??t?s?? Qs(n), ?a? ????? Ss(n) ?ts?
    ?ste ?? s??a?t?se?? Qs(n), Ps(n)/n, Ss(n)/n ?a
    e??a? a????se?. ???a? ef??t? ? d??aµ?p???s? ?a?
    pa?a???? µ?a? d?µ?? µe ???????? lognQs(n) ???????
    p???p????t?ta , lognPs(n)/n ????? e???se?? ?a?
    ???? Ss(n).
Write a Comment
User Comments (0)
About PowerShow.com