Upload
matiasromero
View
213
Download
0
Embed Size (px)
DESCRIPTION
La legitimidad de las monjas con ordenación completa ( bhikkhuni / bhiksuni ) se ha convertido en un tema importante de debate en los últimos años. Textos transmiten en cada registro tradición budista que Gautama Buda creado una orden de monjas con ordenación completa, pero la tradición ha desaparecido en algunas tradiciones budistas como el budismo Theravada, sin dejar de ser fuerte en otros como el budismo chino ( Dharmaguptaka linaje). En el linaje tibetano , que sigue el linaje Mulasarvastivadin, el linaje de monjas con ordenación completa no fue traído a Tíbet por los indios Vinaya maestros, por lo tanto, no hay rito de la ordenación de monjas completos. Sin embargo th 14to Dalai Lama se ha esforzado durante muchos años para mejorar esta situación. [ 2 ] En 2005 se pidió a las monjas con ordenación completa en el linaje Dharmaguptaka, especialmente Jampa Tsedroen , para formar un comité para trabajar por la aceptación de la bhiksuni linaje dentro del tibetano tradición, [ 2 ] y donado € 50.000 para futuras investigaciones. Los "1er Congreso Internacional sobre el papel de las mujeres budistas en el Sangha: Bhikshuni Vinaya y Ordenación Linajes" se celebró en la Universidad de Hamburgo del 18 al 20 julio, 2007, en colaboración con el Instituto de Asia y África de la Universidad. Aunque el tono general era que la ordenación completa fue vencida, el Dalai Lama presentó un documento preliminar elaborado [ 3 ] diciendo que se necesitaba más tiempo para tomar una decisión, anulando así las intenciones del Congreso.
Citation preview
Ordenación rápida
Algoritmos y Estructuras de Datos II
Ordenación rápida
16 de marzo de 2015
Ordenación rápida Algoritmos y Estructuras de Datos II
Ordenación rápida
Contenidos
1 Ordenación rápidaEl algoritmoEjemploAnálisis
Ordenación rápida Algoritmos y Estructuras de Datos II
Ordenación rápidaEl algoritmoEjemploAnálisis
Ayuda de Juan
La idea original de Juan fueQue cada uno ordenara la mitad.Que luego se intercalen las dos mitades ya ordenadas.Este proceso, iterado, dio lugar a la ordenación porintercalación.
otra idea parecida puede ser:Separar en dos mitades: por un lado los que irían alprincipio y por el otro los que irían al final.Que cada uno ordene su mitad.Que finalmente se junten las dos mitades ordenadas.Esta idea da lugar al algoritmo conocido por quicksort uordenación rápida.
Ordenación rápida Algoritmos y Estructuras de Datos II
Ordenación rápidaEl algoritmoEjemploAnálisis
Ordenación rápida en Haskell
qsort :: [T]→ [T]qsort [] = []qsort [a] = [a]qsort (a:as) = qsort xs ++ [a] ++ qsort ys
where (xs,ys) = (filter (<=a) as, filter (>a) as)
Ordenación rápida Algoritmos y Estructuras de Datos II
Ordenación rápidaEl algoritmoEjemploAnálisis
Ordenación rápida en pseudocódigo
{Pre: 0 ≤ der ≤ n ∧ 1 ≤ izq ≤ n+1 ∧ izq-1 ≤ der ∧ a = A}proc quick_sort_rec (in/out a: array[1..n] of T, in izq,der: nat)
var piv: natif der > izq→ pivot(a,izq,der,piv)
izq ≤ piv ≤ derelementos en a[izq,piv-1] < ó = que a[piv]elementos en a[piv+1,der] > a[piv]}
quick_sort_rec(a,izq,piv-1)quick_sort_rec(a,piv+1,der)
fiend proc{Post: a permutación de A ∧ a[izq,der] permutación ordenada de A[izq,der]}
Ordenación rápida Algoritmos y Estructuras de Datos II
Ordenación rápidaEl algoritmoEjemploAnálisis
Algoritmo principal
proc quick_sort (in/out a: array[1..n] of T)quick_sort_rec(a,1,n)
end proc
Ordenación rápida Algoritmos y Estructuras de Datos II
Ordenación rápidaEl algoritmoEjemploAnálisis
Procedimiento pivotproc pivot (in/out a: array[1..n] of T, in izq, der: nat, out piv: nat)
var i,j: natpiv:= izqi:= izq+1j:= derdo i ≤ j→ if a[i] ≤ a[piv]→ i:= i+1
a[j] > a[piv]→ j:= j-1a[i] > a[piv] ∧ a[j] ≤ a[piv]→ swap(a,i,j)
i:= i+1j:= j-1
fiodswap(a,piv,j) {dejando el pivote en una posición más central}piv:= j {señalando la nueva posición del pivote}
end procOrdenación rápida Algoritmos y Estructuras de Datos II
Ordenación rápidaEl algoritmoEjemploAnálisis
Invariante del procedimiento pivot
a
� -� -� -pivote
menores o iguales
que el pivote
sin
clasificar
mayores
que el pivote
izq
piv
izq+1 i -1 i j j +1 der
al finalizar queda así:
a
� -� -pivote
menores o iguales
que el pivote
mayores
que el pivote
izq
piv
izq+1 ij der
y se hace un swap entre las posiciones izq y j.
Ordenación rápida Algoritmos y Estructuras de Datos II
Ordenación rápidaEl algoritmoEjemploAnálisis
Pre, post e invariante
{Pre: 1 ≤ izq < der ≤ n ∧ a = A}{Post: a[1,izq) = A[1,izq) ∧ a(der,n] = A(der,n]∧ a[izq,der] permutación de A[izq,der]∧ izq ≤ piv ≤ der∧ los elementos de a[izq,piv] son ≤ que a[piv]∧ los elementos de a(piv,der] son > que a[piv]}{Inv: izq = piv < i ≤ j+1 ≤ der+1∧ todos los elementos en a[izq,i) son ≤ que a[piv]∧ todos los elementos en a(j,der] son > que a[piv]}
Ordenación rápida Algoritmos y Estructuras de Datos II
Ordenación rápidaEl algoritmoEjemploAnálisis
Ejemplo
3 9 1 2 7 3 5
3 9 1 2 7 3 5
3 3 1 2 7 9 5
2 3 1 3 7 9 5
2 3 1 3 7 9 5
2 1 3 3 7 9 5
1 2 3 3 7 9 5
1 2 3 3 7 9 5
1 2 3 3 7 9 5
1 2 3 3 7 9 5
1 2 3 3 7 5 9
1 2 3 3 5 7 9
1 2 3 3 5 7 9
1 2 3 3 5 7 9
Ordenación rápida Algoritmos y Estructuras de Datos II
Ordenación rápidaEl algoritmoEjemploAnálisis
Ejemplo de pivot
3 9 1 2 7 3 5
3 9 1 2 7 3 5
3 3 1 2 7 9 5
3 3 1 2 7 9 5
3 3 1 2 7 9 5
3 3 1 2 7 9 5
2 3 1 3 7 9 5
Ordenación rápida Algoritmos y Estructuras de Datos II
Ordenación rápidaEl algoritmoEjemploAnálisis
Análisis del algoritmo
Queda para la clase que viene.
Ordenación rápida Algoritmos y Estructuras de Datos II