Como se preparar para as estruturas de dados

O curso de ciência da computação mais desafiador.

Obter uma boa nota em estruturas de dados é uma das coisas mais importantes que você pode fazer para sua carreira em ciência da computação/pesquisa/programação/software/bancos de dados/pretty-much-anything. Estruturas de dados é geralmente o último curso de CS weeder e a porta de entrada conceitual e curricular para muitos cursos superiores. Todas as futuras entrevistas de emprego testarão o que você aprendeu aqui, então sim, é aqui que você começa a conseguir trabalhos de programação. É a peregrinação pela eficácia do tempo de execução, a jornada em direção à iluminação de dados e a abordagem de muitos problemas do mundo real.

 

Aqui que você começa a conseguir trabalhos de programação

 

'Estruturas de Dados' aborda a organização da memória para eficiência de tarefas específicas e os métodos pelos quais acessá-la, analisá-la e modificá-la. Você estará lidando com maneiras de atribuir ponteiros ou o equivalente primitivo. Você deve saber que esta classe é “programação intensiva”. Embora você possa entender facilmente os conceitos e a teoria, a implementação efetiva do código das atribuições é essencial para vencer.

 

 

Grande parte da atenção deste curso é dada à complexidade do tempo de execução. Você avaliará o efeito de seus programas por meio de análise big-O e manipulação de grandes conjuntos de dados. Por exemplo, é provável que você tenha que determinar todas as soluções possíveis para um quebra-cabeça de sudoku. Ou seja, você terá que preencher todos os espaços em branco em um sudoku, programaticamente. Tome um segundo para pensar sobre isso. Use a figura abaixo para ajudá-lo a pensar.

 

Observe como alguns dos quadrados têm os números de 1 a 9 neles? Você terá que construir um programa para testar se algum desses números 729 números é adequado.

 

Outros desafios incluem: criar seu próprio programa de compressão para minimizar os dados, estimar todas as rotas possíveis que um passageiro de avião poderia fazer até um destino, dada a grande quantidade de aeroportos e um enorme conjunto de voos. Você tem isso, certo?

 

Outros desafios incluem: criar seu próprio algoritmo de compressão. Isso mesmo, um programa para fazer arquivos .zip

 

A aula exige muito aprendizado - e aprender sobre o aprendizado. Você apreciará a variedade de palestras, discussões, exercícios (conceituais e de programação) e interações entre colegas que estimulam o pensamento. Mas lembre-se, essas coisas não são fáceis. Você precisará ficar engajado e começar cedo, então vamos começar a nos preparar.

 

Dicas de aprendizado

 

Para criar o ambiente certo para o aprendizado, aqui estão minhas recomendações.

 

1. Forme um grupo de colegas no Avance Network com antecedência

 

Isso permitirá que você se aproxime de seus colegas e pergunte sobre o progresso deles em seus programas. Ele irá ajudá-lo a cronometrar-se. Você compartilhará apenas dicas suficientes para ser útil e não um trapaceiro.

 

2. Incentive o professor a criar uma praça

 

Piazza é uma maneira muito formal de compartilhar conceitos, dificuldades técnicas ou esclarecer coisas diretamente com o professor. Além disso, pode haver problemas com a dificuldade da tarefa. Dar voz ao seu progresso na Piazza pode conceder a você direitos de barganha com o professor.

 

3. Sente-se ao lado de várias pessoas estimulantes

 

Sente-se com aqueles que estão fazendo perguntas. Sente-se com aqueles que fazem você se sentir estúpido dizendo coisas inteligentes. Sente-se com quem chega cedo, fique depois e sente-se na frente. E especialmente, sente-se e converse com aqueles que fazem anotações em um iPad (às vezes eles estão dispostos a compartilhar!)

 

4. Fique longe de certos parceiros de programação

 

A programação em pares é a principal função para aprendizado no ECS60. Faça boas escolhas sobre com quem você faz parceria. Não faça par com alguém que esteja claramente ocupado naquele trimestre. Quem se saiu mal no pré-requisito. Quem imediatamente te irrita. Você não tem que prometer sua mão ao seu parceiro. Comunique que a parceria é contingente. Teste-os para o primeiro programa.

 

3. Crie uma conta do Stackoverflow

 

Stackoverflow é perfeito para esclarecer problemas simplificados. É rápido para esclarecer questões de sintaxe. Ao usá-lo para fazer perguntas e votar, você começará a construir uma reputação de programador

 

Preparação Recomendada

 

Ficando empolgado. Pergunte ao redor e certifique-se de ter a aula com o professor mais rigoroso e acessível. Obtenha alguns dos programas atribuídos anteriormente e faça-os. Recrute um colega (que você considere sólido) como um parceiro em potencial na classe.

 

Refaça/reveja/codifique tudo o que você fez nos últimos 6 meses. Acostume-se a um bom editor e ambiente de desenvolvimento. Eu sugiro que você obtenha o Sublime Text 2 e o Total Terminal (Mac Only). Além disso, obtenha o plug-in sftp para Sublime Text 2 para fazer upload e download de arquivos sem problemas para o servidor de envio. Além disso, obtenha outro cliente ftp com uma boa interface de movimentação de arquivos. Estes irão ajudá-lo a fazer upload e download de arquivos imediatamente. Isso será super útil às 11:58, quando o programa terminar. O software sugerido é o seguinte: cyberduck, filezilla e my fav transmit(MAC).

 

Enquanto você está nisso, explore as vantagens de algumas das seguintes bibliotecas c++ stl/std: vetores, conjuntos e uniões. Eles serão úteis para mais tarde.

 

Esteja preparado para as seguintes tarefas: Sudoku, caixeiros-viajantes, algoritmo de Dijkstra, algoritmo de Kruskal, codificação de Huffman.

 

E é isso pessoal

 

Esta é apenas a minha opinião, não há uma maneira de se sair bem neste curso. Lembre-se, no entanto, que há uma quantidade infinita de maneiras pelas quais você pode ficar desencorajado, frustrado ou deixado para trás. Certifique-se de chegar cedo, ficar muitas horas depois, fazer perguntas e ajudar os outros.

 

Nota para todos os alunos

 

O clube de ciência da computação do Avance Network é uma potência de alunos de ciências e tecnologias envolventes e úteis. Adoraríamos vê-lo por aqui neste novo ano.


Strong

5178 Blog postovi

Komentari