Live streaming video by Ustream Live streaming video by Ustream antes e depois da ilustracao criada para um cartaz de festa Video produzido para a CONSTRUTORA SODESTE / ano 2011Texto e direcao: Rosane ViolaApresentadora: Fernanda ViolaImagens: Salmo VazEdicao e finalizacao: Creo mauro de OliveiraProducao e edicao de videos-corporativos ou comerciaisContato: (34) 9223-4942 Uberlandia - MG Trabalho desenvolvido para a agencia POOL comunicacao. peguei alguns trabalhos que eu fis nos ultimos dois anos e juntei tudo num video, um demo, espero que gostem. Trilha sonora do filme Ghost Riders, vi a musica tocada por Duane Eddy, e me lembrei que era a trilha sonora do filme Ghost Riders, baixei o filme e a musica tocada pelo musico e fiz uma edicao, espero que gostem. Eu resolvi estudar essa estrutura de dados porque ela foi utilizada pelo Daniel Zerbino no Velvet e segundo ele:"Although theoretically less efficient, they are much easier to implement and have proven in practice as efficient as other forms of binary search trees. This solution, although memory costly, proved robust even with very large datasets. The processing of reads was thus greatly accelerated and large datasets (up to 500.000.000 Illumina reads) could be hashed in a matter of hours instead of days."Fonte: ZERBINO (2009, Genome assembly and comparison using de Bruijn graphs).VantagensSao mais faceis de implementar que outras tecnicas de arvores binarias (BST);Requer menor espaco de memoria que as Vermelha e Preto ou AVL (quando nao for necessario informacao de balanceamento). Desvantagensmaior numero de ajustes locais, durante a buscaApos o acesso a todos os elementos da arvore, a ordem reduz a uma lista encadeada O(n), o que corresponde ao pior caso do tempo de acesso.Algumas curiosidades dessa estrutura:Os nos mais acessados tendem a estar mais proximos da raiz, o que reduz o tempo medio de acesso.Funciona com chaves repetidas e o tempo tende a O(log n).Uma boa forma de visualizar a estrutura e as operacoes basicas (insercao, exclusao e busca) pode ser vista em:https://www.cs.usfca.edu/~galles/visualization/SplayTree.htmlA avaliacao em relacao a complexidade temporal das operacoes (para uma arvore com n elementos):Buscatempo amortizado de O(logn) Insercaopadrao das BST: O(logn)Exclusaosemelhante as demais arvores: O(logn)Na media, o tempo de busca, sera semelhante as demais arvores, porem na pratica pode ocorrer uma reducao do tempo, quando a distribuicao dos elementos consultados tendem a ter uma distribuicao normal ao inves da distribuicao aleatoria que normalmente e considerada para analise desses algoritmos.Segue uma implementacao em Java do algoritmo://// Splay tree//public class SplayTree { private SplayNode root = null; public SplayTree() { } private SplayNode singleRotateWithLeft(SplayNode k2) { SplayNode k1; k1 = k2.left; k2.left = k1.right; k1.right = k2; return k1; } private SplayNode singleRotateWithRight(SplayNode k1) { SplayNode k2; k2 = k1.right; k1.right = k2.left; k2.left = k1; return k2; } private SplayNode splay(T value, SplayNode tree) { SplayNode header = new SplayNode(); SplayNode leftTreeMax = header, rightTreeMin = header; if (tree == null) { return null; } header.left = null; header.right = null; leftTreeMax = header; rightTreeMin = header; while (!value.equals(tree.value)) { if (value.compareTo(tree.value) < 0) { if (tree.left == null) { break; } if (value.compareTo(tree.left.value) < 0) {