O Java 9 está começando a sair do forno. Agora em dezembro o desenvolvimento alcançou a marca de "Recurso Completo", ou seja, todos os recursos foram implementados e integrados na floresta principal do Java, inclusive sendo feitos os testes de unidade.
A lista de recursos do JDK 9 incluídos no JDK 9 Early Access Downloads pode ser encontrada na página do Projeto JDK 9.
Para instalação no Ubuntu (funciona em outras variantes do Debian também) basta seguir os passos em um terminal:
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java9-installer
Se você quiser configurar o Oracle Java 9 como padrão, não importa quais outras versões Java estejam instaladas, certifique-se de instalar o pacote oracle-java9-set-default, digitando no terminal:
$sudo apt-get install oracle-java9-set-default
Note que ainda é um release recente para testes.
Não deve ser utilizado hoje em um ambiente de produção!
terça-feira, 3 de janeiro de 2017
Alterando o local padrão para as máquinas virtuais no VMware Player
Eu uso muito os ambientes de virtualização da VMware, Xen e Virtualbox.
Na versão gratuita do VMware, chamada VMware Player, você pode criar diversas máquinas virtuais para uso não comercial. Uma das maiores dificuldades que tive é em organizar onde as máquinas serão criadas. Eu normalmente coloco todas em um subdiretório assim fica fácil fazer backup delas.
Na GUI do VMware Player não existe uma opção para definir onde é a localização default das VMs.
Se você está utilizando linux, procure dentro do HOME do seu usuário o diretório .vmware (note que começa com ponto). Abra o arquivo ~/.vmware/preferences e acrescente a seguinte linha:
prefvmx.defaultvmpath = /<seu diretório>
Na versão gratuita do VMware, chamada VMware Player, você pode criar diversas máquinas virtuais para uso não comercial. Uma das maiores dificuldades que tive é em organizar onde as máquinas serão criadas. Eu normalmente coloco todas em um subdiretório assim fica fácil fazer backup delas.
Na GUI do VMware Player não existe uma opção para definir onde é a localização default das VMs.
Se você está utilizando linux, procure dentro do HOME do seu usuário o diretório .vmware (note que começa com ponto). Abra o arquivo ~/.vmware/preferences e acrescente a seguinte linha:
prefvmx.defaultvmpath = /<seu diretório>
Salve o arquivo, reinicie o VMware Player. Pronto, agora quando você for criar uma nova VM você será direcionado para o diretório que você definiu.
No Windows é necessário acrescentar a mesma linha, contudo o caminho completo do arquivo de preferências é: %Appdata%\VMware\preferences.ini.
domingo, 30 de outubro de 2016
Componentes conectados em Grafos
Em um grafo não-direcionado G, dois vértices u e v são ditos conectados se G contém um caminho de u para v. Senão, eles são chamados de desconectados. Um grafo orientado (ou direcionado) é chamado de fracamente conectado se a substituição de todas as suas arestas direcionadas por arestas não direcionadas produz um grafo (não-direcionado) conectado. Ele é chamado de conectado se possui um caminho direcionado de u para v ou um caminho direcionado de v para u para cada par de vértices u, v. Ele é fortemente conexo se contém um caminho direto de u para v e um caminho direto v para u para cada par de vértices u, v. Um vértice de corte de um grafo conexo G é um conjunto de vértices que quando removidos torna G desconexo.
Um grafo não direcionado é conectado se cada par de vértices está conectado por um caminho. Os componentes conectados são as porções conectadas de um grafo. Um grafo não direcionado é conectado se ele tem exatamente um componente conectado.
Os componentes fortemente conexos são os subgrafos maximais fortemente conectados.
O Algoritmo para achar estes componentes é:
Um grafo não direcionado é conectado se cada par de vértices está conectado por um caminho. Os componentes conectados são as porções conectadas de um grafo. Um grafo não direcionado é conectado se ele tem exatamente um componente conectado.
Os componentes fortemente conexos são os subgrafos maximais fortemente conectados.
Os componentes fortemente conectados de
um grafo direcionado são conjuntos de
vértices sob a relação “são mutuamente
alcançáveis”.
Por exemplo {0, 1, 2, 3}, {4} e {5} são os componentes
fortemente conectados, {4, 5} não o é, pois o
vértice 5 não é alcançável a partir do vértice 4.
O Algoritmo para achar estes componentes é:
- Aplicar a busca em profundidade no grafo G para obter os tempos de término t[u] para cada vértice u.
- Obter o grafo G', que é o grafo transposto, isto é, são os mesmos vértices mas as arestas são invertidas. Assim existe uma arestas (u,v) em G' se existe uma aresta (v,u) em G.
- Aplicar a busca em profundidade no grafo G' realizando a busca a partir do vértice de maior t[u] obtido na linha 1.
- Se a busca em profundidade não alcançar todos os vértices, inicie uma nova busca em profundidade a partir do vértice de maior t[u] dentre os vértices restantes.
- Retornar os vértices de cada árvore da floresta obtida na busca em profundidade na linha 3 como um componente fortemente conectado separado.
Assinar:
Postagens (Atom)