コード例 #1
0
        public void insertarNodo(Nodo nuevoNodo)
        {
            Nodo resultado = OperacionesArbol.insertarNodo(nuevoNodo, raiz);

            if (resultado != null)
            {
                if (raiz.indice == false)
                {
                    raiz = new Hoja();
                    raiz.nuevoIndice();
                    raiz.Nodos.Add(resultado);
                }
                else
                {
                    raiz.Nodos.Add(resultado);
                    raiz.Nodos = raiz.Nodos.OrderBy(x => x.nombre).ToList();

                    if (raiz.Nodos.Count() > Constants.ordenArbol)
                    {
                        Nodo promovido = OperacionesArbol.Promover(raiz);
                        raiz = new Hoja();
                        raiz.nuevoIndice();
                        raiz.Nodos.Add(promovido);
                    }
                }
            }
        }
コード例 #2
0
        private void txtNombre_KeyPress(object sender, KeyPressEventArgs e)
        {
            viewBusqueda.Items.Clear();
            List <Nodo> resultados = OperacionesArbol.buscarNombre(txtNombre.Text, frmExplorer.arbolIndice.raiz);

            foreach (Nodo n in resultados)
            {
                string[]     itemInfo = { n.nombre };
                ListViewItem nod      = new ListViewItem(itemInfo, 0);
                nod.Tag = n.cluster + "," + n.ubicacion;
                viewBusqueda.Items.Add(nod);
            }
        }