JavaScript os conceitos básicos para iniciantes - Seção 7: Algoritmos | Rob Merrill | Skillshare

Velocidade de reprodução


  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x

JavaScript os conceitos básicos para iniciantes - Seção 7: Algoritmos

teacher avatar Rob Merrill, JavaScript Instructor

Assista a este curso e milhares de outros

Tenha acesso ilimitado a todos os cursos
Oferecidos por líderes do setor e profissionais do mercado
Os temas incluem ilustração, design, fotografia e muito mais

Assista a este curso e milhares de outros

Tenha acesso ilimitado a todos os cursos
Oferecidos por líderes do setor e profissionais do mercado
Os temas incluem ilustração, design, fotografia e muito mais

Aulas neste curso

7 aulas (53 min)
    • 1. JavaScript the Basics - Programação funcional: Vídeo promocional

      1:55
    • 2. JavaScript the Basics - Programação funcional: Identifique cordas exclusivas

      9:36
    • 3. JavaScript the Basics - Programação funcional: Word mais longo em uma cadeia

      8:22
    • 4. JavaScript the Basics - Programação funcional: permutação de duas cordas

      9:34
    • 5. JavaScript the Basics - Programação funcional: Soma de Gama

      6:45
    • 6. JavaScript the Basics - Programação funcional: Remover elementos da cabeça

      7:57
    • 7. JavaScript the Basics - Programação funcional: Palindrome

      8:51
  • --
  • Nível iniciante
  • Nível intermediário
  • Nível avançado
  • Todos os níveis

Gerado pela comunidade

O nível é determinado pela opinião da maioria dos estudantes que avaliaram este curso. Mostramos a recomendação do professor até que sejam coletadas as respostas de pelo menos 5 estudantes.

436

Estudantes

--

Sobre este curso

Curso 7 - Algoritmos JavaScript

Neste curso, você vai cobrir:

  • Indentifique cordas exclusivas
  • Identifique o Word mais longo em uma cadeia
  • Permutação de duas cordas
  • Soma de alcance
  • Remover elementos da cabeça
  • Palindrome

Através de todo o nosso JavaScript, as noções básicas para cursos iniciantes, você vai achar que essa é sua única parada necessária para entrar no idioma do JavaScript. Vamos começar do zero e construir nosso entendimento da linguagem de programação mais popular do mundo juntos.

Visualizar JavaScript em ação com vídeos de quadro branco otimizados para visualização no seu smartphone. Esse é realmente um curso que você pode se envolver com qualquer lugar que você esteja. Leve sua educação JavaScript em movimento! Com vídeos de quadro branco, você pode visualizar o que JavaScript faz no capô.

Você pode praticar JavaScript no seu navegador da Web! Aproveite as ferramentas de desenvolvedores do Google Chrome para colocar o JavaScript que você aprendeu durante nossa lição de quadro branco em prática com mais exemplos e desafios. Esse é o nosso playground JavaScript.

Aprender JavaScript é como aprender um idioma. Este curso não vai fazer uma falsa promessa de dizer que você vai dominar o JavaScript durante a noite. No entanto, este curso vai mergulhar você na linguagem de programação mais popular do mundo.

Cada curso vai apresentar algo novo no JavaScript:

  • Sintaxe JavaScript
  • Blocos de construção JavaScript
  • Práticas recomendadas em JavaScript
  • Objetos JavaScript
  • Arraias JavaScript
  • Expressões regulares JavaScript
  • Programação funcional JavaScript
  • Algoritmos de JavaScript
  • Estruturas de dados JavaScript
  • Sintaxe JavaScript ES6

Você vai concluir este curso com uma compreensão de JavaScript que vai permitir que você dê um mergulho mais profundo no idioma e, possivelmente, lançá-lo em uma nova carreira como desenvolvedor da Web JavaScript.

Aprender um novo idioma pode ser difícil e até mesmo se sentir intimidante. JavaScript o básico de todos os conceitos básicos faz com que o processo de aprendizado se sinta acessível e acolhedor!

Conheça seu professor

Teacher Profile Image

Rob Merrill

JavaScript Instructor

Professor

Rob Merrill is a Full Stack JavaScript Developer. His specialty is in the MEAN stack focusing on AngularJS, NodeJS, ExpressJS and MongoDB.

He is a graduate of Code Fellows Advanced Full Stack JavaScript Development course and has been developing with JavaScript for three years.

In his spare time he travels around Seattle's finest craft breweries with his wife and their dog.

Visualizar o perfil completo

Nota do curso

As expectativas foram atingidas?
    Superou!
  • 0%
  • Sim
  • 0%
  • Um pouco
  • 0%
  • Não
  • 0%
Arquivo de avaliações

Em outubro de 2018, atualizamos nosso sistema de avaliações para melhorar a forma como coletamos feedback. Abaixo estão as avaliações escritas antes dessa atualização.

Por que fazer parte da Skillshare?

Faça cursos premiados Skillshare Original

Cada curso possui cursos curtas e projetos práticos

Sua assinatura apoia os professores da Skillshare

Aprenda em qualquer lugar

Faça cursos em qualquer lugar com o aplicativo da Skillshare. Assista no avião, no metrô ou em qualquer lugar que funcione melhor para você, por streaming ou download.

Transcrições

1. JavaScript the Basics - Programação funcional: Vídeo promocional: Bem-vindo ao script Java. O Basics. JavaScript é a linguagem de programação mais popular no mundo tem sido chamado a linguagem da Web Stack Overflow listado como a tecnologia surda mais popular e obter números que como o top ranks aprendizagem linguagem JavaScript permitirá que você seja um desenvolvedor pilha completa ou financiar uma especialidade no front-end ou no back-end. Com JavaScript, você será capaz de lidar com frontais e frameworks como reagir e angular no lado do cliente . E você também pode cortar no lado do servidor back-end sem Js e criar bancos de dados com Mongo . DB JavaScript é uma linguagem, por isso vai levar algum tempo para aprender antes que você possa escrever poesia ou um romance em qualquer idioma, você tem que primeiro aprender o alfabeto linguístico, como fazer palavras e ver como os outros o usam. Para aprender JavaScript. Vamos procurar debaixo do capô. Isso não vai ser apenas um exercício na cópia do código de outra pessoa para acabar com um aplicativo que você não entende. Tudo o que fazemos será visual na forma de uma lição de quadro branco onde você pode realmente ver como tudo funciona e se conecta. Se você é um aprendiz visual, este é o curso para você. Isso não é sobre ir 0 a 60 ou zero para herói, porque se você realmente está começando em zero, esses cursos te deixam para trás rapidamente. É sobre aprender. Compreender e aplicar é que você pode criar e criar com Javascript. Caminho seguirá o nosso quadro branco. As lições sobre a maneira de laboratório entrarão no desenvolvedor de software do Google Chrome. Cardos do cônsul são recreio de script Java. Não há nada que você precise baixar para este curso. Sem ferramentas especiais, sem passos extras. Só Google, cromo, tudo. Você aprendeu a lição que recriaremos juntos no laboratório. Em seguida, apresentarei um desafio de código para recriar o que aprendemos juntos e, em seguida, analisaremos juntos uma possível solução. Bem-vindo ao Java Script. O básico. Vamos começar a falar script de trabalho 2. JavaScript the Basics - Programação funcional: Identifique cordas exclusivas: Muito bem, bem-vindos de volta a Java. Retire o básico nesta seção, nós vamos estar olhando para algoritmos. O que é um algoritmo em matemática e ciência da computação e algoritmo é um auto-contido , passo a passo conjunto de operações a serem realizadas algoritmos realizar cálculos, processamento de dados final ou testes de raciocínio automatizados em cada um dos nossos começarão levantando a questão que estamos tentando resolver. Bem, então compartilhe com você lista de métodos e propriedades que você poderia usar no financiamento. Uma solução em nossa sessão de quadro branco demonstrará essas ferramentas em ação. Então vamos direto para o laboratório. partir daí, você terá a oportunidade de pausar o vídeo e dar a si mesmo a chance de resolvê-lo sozinho durante o laboratório. Certo, dê um pseudo código para ajudá-lo se precisar de um quadro para começar, tipo pára-choques e boliche. Antes de olharmos para a solução, vou pedir-lhe para ajustar o temporizador para 15 minutos. Então eu vou orientá-lo através de uma solução ou duas. Vamos começar com a primeira pergunta. Eu quero que você implemente um algoritmo que irá determinar se uma string tem todos os caracteres únicos em outras palavras, ele não tem caracteres repetidos. Três ingredientes que você pode achar úteis para resolver esta questão são um loop for, uma instrução condicional, o índice do método string de e a cadeia de caracteres do método último índice off. Agora já sabemos como um loop quatro funciona maneira ter a palavra-chave para seguido por parênteses , com três instruções, com três instruções, a inicialização do contador, em seguida, a condição de teste. Isso então nos levará para o bloco de código enquanto a segunda declaração. A condição de teste é verdadeira maneira, em seguida, executando bloco de código. E depois disso, atualizamos nosso contador, que é a declaração três no nosso para Lou. Isso nos leva de volta à segunda declaração na condição de teste para perguntar se ainda é verdade. Continuamos inserindo o bloco de código até que a condição de teste seja falsa. Nós também olhamos para instruções condicionais em nossa primeira lição loop são declarações condicionais terão a sintaxe básica da palavra-chave if, seguido por um conjunto de parênteses com uma expressão dentro deles. Se essa expressão for avaliada como true, entraremos no bloco de código, que é cercado por um par de chaves. Se a expressão for avaliada como false, então você passará sobre o bloco de código. Agora vamos olhar para o índice do método string off. Já vimos métodos de string antes. Por exemplo, string dot para maiúsculas transforma todos os caracteres em nossa string em uma maiúscula neste exemplo são string de carro ou seja, um todo minúsculo é transformado em todas as letras maiúsculas com o método para maiúsculas. O índice do método string off irá retornar o primeiro índice em que encontramos uma correspondência para a string que estavam procurando Vamos vê-lo na prática, eu vou declarar uma variável chamada Khar. Vamos começar pelo valor da corda Honda Civic. Agora suponha que queremos encontrar a colocação da palavra cívica em nossa corda. Nós escreveríamos carro são anteriormente declarados variável do que o método de índice de, em seguida, o método de índice off e, em seguida, vamos passar para ele. O argumento Civic. Temos um valor de retorno de seis. Este é o primeiro índice em que a nossa partida começa com a letra C. Se tentássemos o mesmo método com a string civil, que é quase uma correspondência correspondente a C I V I, obtemos um resultado negativo, que significa que não havia correspondência para a nossa string que estávamos procurando. Vamos fazer mais uma verificação. Suponha que estávamos olhando para o índice do caractere de string I. Mesmo que haja dois olhos, vamos apenas retornar o primeiro I no índice sete porque este método retorna o primeiro valor . Isso é um jogo. Agora vamos olhar para outro método de string que você pode escolher para aproveitar. Este é o último índice desligado. Você provavelmente poderia adivinhar com segurança que o último índice de vai lhe dar o índice do último lugar que você encontrar uma correspondência. Vamos olhar para o nosso exemplo anterior índice de carro. Eu retornei o primeiro eu no índice sete último índice de carro. Eu devolverei o último I no índice nove. Certo, hora de ir ao laboratório. Agora, se você quiser, você pode pausar este vídeo agora e tentar encontrar uma solução. Se esperares mais um minuto, vou guiar-te através do pseudo código. Este sou eu escrevendo em Inglês abordagem que podemos tomar para resolver com casaco. Eu sugeriria que se você não tem idéia por onde começar ou já se esforçou por alguns minutos para dar uma olhada no pseudo código. Então dê uma chance de novo. Primeiro, vamos criar uma função. Você pode nomeá-lo. O que você quiser. Você vai dar-lhe um parâmetro de qualquer argumento ou string que você está indo para verificar. Isso nos levará a um bloco de código no qual vamos examinar nossa string para ver se todos os caracteres são únicos. Vamos usar um loop for para iterado através da string. Você precisará preencher o loop de quatro com a inicialização do contador, a condição de teste e a atualização do contador. Assumindo que sua condição de teste é verdadeira, você vai saltar para o próximo bloco de código. Isso terá uma declaração se condicional vamos olhar e ver se o primeiro índice no último índice corresponde. Se o fizerem, podemos iterar através da próxima letra na nossa matriz. Se a condição for avaliada como falsa, isso significa que a letra deve aparecer duas vezes se houver uma primeira aparência e última aparência diferentes . Se for esse o caso, quem quer retornar falso e receberemos uma declaração falsa. Se passarmos por uma cadeia inteira sem declarações falsas, então saltaremos para fora do bloco co e retornaremos. Verdadeiro para testar nossa string nomeará nossa função que definimos anteriormente e preenchê-lo com um argumento que queremos testar. Tudo bem, vá em frente e defina um temporizador para 10 ou 15 minutos, pause o vídeo e dê uma chance. Então vamos voltar juntos em alguns momentos e encontrar a solução. Tudo bem, como ir. Vamos entrar no Google Chrome Cônsul e encontrar uma possível solução. Se você não veio com uma solução, tudo bem. Lembre-se, o aprendizado é muitas vezes na luta. Através de tentativa e erro. Você está aprendendo o que funciona e não funciona. Iremos em frente e declararemos uma função chamada única. Vamos dar-lhe um parâmetro de str para string, em seguida, fazer um bloco de código que entrará em quando chamar ou invocar a nossa função E este bloco de código, que irá criar um loop de quatro que será iterado através do teste string. Se cada caractere for único, perguntaremos se o caractere que estamos olhando no índice atual. Se a primeira instância desse caractere não é igual à última instância de um caractere que significaria uma repetição. Então esta declaração condicional está dizendo, Se não é verdade que a primeira instância é igual à última instância, então esta é uma declaração condicional verdadeira, e nós retornaremos false. No entanto, se o primeiro, a menos que instância, são os mesmos do que é falso que eles não são iguais. Então não devolvemos a declaração falsa e voltamos para o nosso loop de quatro e olhamos para o próximo caractere de string. A lógica pode ser um pouco complicado se você tem que pausar o vídeo e diagrama que um pouco para afundar dentro. Tudo bem, vamos olhar para o carro argumento. Se colocarmos carro em como nosso argumento, vemos que C é igual à primeira instância e a última instância. Portanto, não é verdade que eles não são iguais, então esta declaração condicional é falsa, então nós não retornamos false. Voltamos ao nosso ciclo de quatro. Nós olhamos para a letra a e vemos o mesmo resultado que quando olhamos para o mar no índice zero modo que nos leva ao nosso loop quatro novamente com índice para e a letra R com o mesmo resultado , atualizamos nosso contador por um e agora nosso para a condição de teste. Temos o contador três, que não é inferior ao comprimento da nossa corda, que é três. Então saltamos para fora do bloco de código, nunca atingindo o valor de retorno falso neste ponto. Como temos pisado sobre o bloco de código, retornamos True. Agora, se olharmos para outro exemplo do anúncio de string, vemos que quando atingimos nosso índice de um o segundo caractere string de D, que é verdade que o primeiro índice de D não é igual a menos índice de D, que é esse índice também. Então isso fará com que nossa declaração condicional seja avaliada como Verdadeiro. Agora passamos para o nosso código que retorna o valor de false. Lá vai você. Se você tiver alguns momentos, vá em frente e experimente os seguintes argumentos. Script Java, smartphone, cadeira de cerveja ou qualquer outra coisa que você quiser. Obrigado por dar esta primeira olhada em algoritmos javascript vai vê-lo em nossa próxima lição com a nossa próxima pergunta 3. JavaScript the Basics - Programação funcional: Word mais longo em uma cadeia: Muito bem, bem-vindos de volta a Java. Script O básico. Em nossa última lição, começamos a olhar para algoritmos e JavaScript. Um algoritmo e um computador são muito parecidos com uma receita e diz ao seu computador exatamente quais os passos a tomar para resolver um problema ou alcançar um objetivo. Os ingredientes são chamados de entradas, enquanto os resultados são chamados de saídas. Em nossa lição anterior, analisamos um algoritmo para determinar se todos os caracteres na string são únicos sem repetições. A nossa pergunta para esta lição é esta. Dada a string, encontre o comprimento da palavra mais longa, todos trabalhando através de duas soluções. Ambos envolverão o uso de um loop for. Uma declaração condicional, como vimos em nossa pergunta anterior, no entanto, entanto, também usará a divisão do método string. Vamos levar algum tempo para olhar o método de divisão de cordas. Última lição. Nós olhamos para o índice String de e último índice de método. Este método na string irá dividir uma string em uma matriz de substratos. Você será capaz de passar argumentos entre parênteses para determinar quantos elementos sub string na matriz ele irá transformar sua string em. Então vamos pegar nosso carro da nossa última lição é Honda Civic. Quando anexamos são método de divisão sem um argumento, obtemos uma matriz com um elemento no índice zero, A corda Honda Civic. Quando anexamos são método de divisão com um argumento de uma string vazia, obtemos uma matriz que dá a cada caractere na string uma sub string na matriz, incluindo o espaço em branco. Se tocarmos o nosso método de divisão com um argumento de uma string com o espaço, obtemos uma matriz com dois elementos. Honda e Civic. Agora temos todas as ferramentas necessárias para ir ao laboratório para encontrar uma possível solução. Novamente, a questão é, criar um algoritmo que financia a palavra mais longa em uma string. Vá em frente, pause o vídeo e dê uma chance. Ou, se você precisar de um pouco mais de orientação, espere um momento e vamos percorrer um pseudo código. Vamos declarar uma função. Isto é o que vai passar nossa sequência de palavras como um argumento. Isso nos levará ao código. Block aqui irá usar o método string. Aprendemos a dividir nossa matriz em uma série de palavras. Pense no que o argumento que você vai precisar para passar para o método de fluxo que acabamos aprender também vai querer declarar uma variável que irá armazenar o valor. A corda mais longa. Só uma dica. Você provavelmente vai querer começar no zero. Bem, em seguida, criar um loop de quatro que irá loop através deste array que nós transformamos nossa string em, Como sempre, que terá três declarações. Inicializará esse contador, estabelecerá nossa condição de teste e atualizará nosso valor. Enquanto passarmos, nossa condição de teste entrará em nosso bloco de código, que terá uma declaração if condicional. Isso vai precisar de algum poder cerebral, mas você vai estar comparando seu comprimento de palavra índice atual com a variável que você declarou anteriormente e o valor atribuído a ela. Se for verdade quando você terminar de iterar através de sua matriz, você retornará o valor da variável manipulando o maior comprimento. Em seguida, você vai querer invocar a função com o seu argumento string. Ajuste o temporizador para cerca de 10 a 15 minutos. Se resolveres isso rápido. Ótima. Se você não consegue passar por isso, tudo bem. Apenas fazer um grande progresso é possível. Isso ajudará a solução a se conectar quando finalmente chegarmos a ela. Tudo bem, como ir? Vamos dar uma olhada em uma possível solução. Vamos começar declarando uma função chamada Max. Word lhe dará um parâmetro de string. Str isso será mais tarde preenchido com o argumento string. Em seguida, vamos em frente e declarar uma variável para matriz. Vamos chamar-lhe palavras. Bem, filho, no valor do str com o método de divisão entre parênteses, vamos colocar aspas com um espaço. Se não puséssemos um espaço, teríamos uma matriz cheia de sub strings de caracteres em vez de uma matriz de palavras. Isso vai estar lá, Ray, que vamos repetir com o nosso loop de quatro em um momento. Em seguida, com a variável Clara chamada maior palavra irá armazenar o valor da maior palavra aqui Vamos inicializar o valor desta variável com zero. Agora vamos criar nosso loop de quatro que será iterado através da nossa matriz que criamos palavras chamadas. Vamos inicializar o nosso valor de I 20, em seguida, definir a nossa condição de teste para ser que os olhos menos do que o comprimento da nossa matriz de palavras com o nosso comprimento de propriedade. Isso nos envia para o bloco de código. Quando sairmos do Kobach irá atualizar o valor por um dentro do nosso bloco de código. Temos uma declaração if dentro de nossos parênteses irá colocar uma expressão que se ele for avaliado como true, vamos mover para outro bloco de código. Então, se nossa palavra em nosso índice atual é maior do que a maior palavra inicialmente definida como zero que no bloco de código onde atribuir esse valor à palavra maior. Então, da próxima vez que aparecermos nesta expressão irá comparar o nosso índice atual com a nossa nova maior palavra. Quando terminarmos de passar por um loop, vamos sair, e nossa próxima seção de código irá retornar o valor numérico da palavra maior. Então agora vamos em frente e experimentá-lo. Vamos invocar função palavra carMax e dar-lhe o argumento da string. Meu dia favorito é sexta-feira. São método de divisão de string irá transformar isso em uma matriz de cinco palavras. Vamos percorrer esta matriz. Nossa maior palavra é inicializada para zero R quatro loop vai passar por este loop são declaração condicional vai perguntar se o nosso índice atual neste 0.0, que é a string my, cujo comprimento de propriedade é igual a 22 é maior do que zero. Então a nossa maior palavra agora está definida como eu iria saltar de volta para o nosso bloco co, olhando para a nossa declaração condicional. Nossos índices atuais um o favorito string, o comprimento da propriedade do favorito é oito. A é maior do que o valor atual para maior palavra, que é para Então nós movemos para o bloco de código, que é uma palavra maior de assinatura, o valor numérico do comprimento do índice atual. Oito. Fazemos isso para o resto do ciclo. Outro dia de três, ou é de dois ou sexta-feira de seis será maior. Quando invocamos a nossa função, vamos obter de volta o valor numérico de A como o nosso maior número. Tudo bem, espero que a solução tenha sido uma ajuda para você. Vamos em frente e passar. Outra solução desta vez se moverá um pouco mais rápido. Primeiro irá declarar uma função chamada Max Word e dar-lhe um parâmetro de str, que vamos passar o nosso argumento bem. Em seguida, declarar uma variável palavras de código e armazenar nele uma matriz com método de divisão de cadeia em qualquer argumento ISS. O que vamos fazer diferente desta vez é em vez de declarar uma variável chamada maior palavra e atribuir que o valor de zero irá atribuir-lhe o valor de uma string vazia, bem, em seguida, criar nosso loop de quatro, assim como na solução anterior. Quando entramos nesse bloco de código, nossa declaração if terá uma expressão que será diferente da nossa solução anterior também. Perguntará se o comprimento da propriedade da nossa string atual no índice é maior do que o comprimento da propriedade atribuído à nossa maior palavra, variável, que neste momento uma string vazia avaliaria 20 Então voltamos para o nosso bloco de código como antes, e a palavra maior agora é igual a esta nova string. No índice atual. Repetimos este processo através de um loop de quatro e temos uma string final atribuída à nossa maior maneira de palavras. Em seguida, retorne o valor numérico da maior palavra com a propriedade length. Vamos em frente e colocar na mesma sequência que um argumento. Lá vai você. Obrigado por se juntar a mim na criação de um algoritmo para determinar o comprimento mais longo de uma palavra em uma string, vamos vê-lo em nossa próxima lição para a próxima pergunta 4. JavaScript the Basics - Programação funcional: permutação de duas cordas: Muito bem, bem-vindo de volta a Java. Escreve o básico. Estamos continuando nossas lições. Olhando para algoritmos JavaScript, já abordamos a criação de um algoritmo para determinar se uma string tem todos os caracteres únicos e outro algoritmo determinando o comprimento da palavra mais longa e uma tensão. Falamos sobre como os algoritmos são como receitas. As entradas são diferentes de ingredientes e eles nos dão uma saída. Esta questão de lições é criar um algoritmo para determinar se duas strings são uma permutação entre si. Como sabemos se uma string é uma permutação de outro fluxo? Podemos fazer isso verificando se uma string contém os mesmos caracteres e a mesma quantidade desses caracteres, independentemente da ordem. Então basebol e bola base e A s a l l b b e r o permutações um do outro. Todos eles podem ser usados para soletrar coisas diferentes, mas eles contêm os mesmos caracteres que eles terão de B para A de dois l e um e. Algumas ferramentas à sua disposição para criar este algoritmo são método de divisão de string, um método de classificação raise, um método de junção de matriz em nosso menos anterior, e nós olhamos o método de divisão de cadeia. Você pode voltar e olhar para o nosso algoritmo para determinar a palavra mais longa em uma string se você precisar de uma atualização. Então vamos em frente e avançar e olhar para o método de classificação em uma matriz. O método de classificação classifica os elementos de uma matriz no lugar e retorna teoria. R. Ele não retorna apenas um valor de matriz. Ele sofre mutação. O que o array waas. A matriz é classificada de acordo com cada valor de ponto de código Unicode caracteres de acordo com a conversão de cadeia de caracteres de cada elemento. Nós não vamos entrar em Unicode em detalhes agora, e pode ser um pouco complicado quando se trata de classificar uma matriz de números. Vejamos um exemplo do método de classificação em strings em uma matriz e em números, e convento declarará uma variável chamada ST e o Sol que os elementos da Califórnia, Washington e Arizona. O resultado é que retornamos uma matriz com Arizona, First, First, California Second e Washington terceiro. Esperemos que isso seja muito intuitivo. Em ordem alfabética, olhamos para a primeira letra para determinar a ordem. Sabemos disso pela forma como as chamadas nominais são frequentemente tomadas nas aulas. Nós não prestamos atenção às seguintes letras ou comprimento de uma palavra a menos que a primeira letra é uma correspondência e precisamos de mais precisão quando olhamos para números vai tomar um pouco de uma abordagem diferente. Não é tão intuitivo, mas deve afundar-se rapidamente. Quando pensamos em alinhar números em ordem na vida real, levamos em conta todos os valores e todos os dígitos de um edifício. O primeiro andar vem antes do quinto andar, e o quinto andar vem antes do 10º andar. No entanto, porque estamos trabalhando com o valor Unicode Point de acordo com a conversão de cadeia de caracteres, a cadeia de caracteres de 11 realmente vem antes da cadeia de três em Unicode Point Order. Da mesma forma, a cadeia de 111 virá antes da cadeia de três justiça. A cadeia de 333 virá antes da cadeia de cinco e Unicode Point ordem novamente. Não se preocupe muito em classificar números. De acordo com o valor Unicode. Não vamos precisar dele para este algoritmo. Eu só queria apresentá-los a isso enquanto falamos sobre o apagamento ou método agora de volta para resolver nosso algoritmo, Por que estamos transformando nossa string em um array? Por que não apenas classificar uma corda? Vamos precisar deste método de classificação de matriz para uma pergunta, porque não temos um método de classificação para uma string no script Java. Então nós vamos ter que transformar nossa string em uma matriz de sub strings, que você aprendeu antes com o método de divisão de string. E nosso objeto matriz tem um método que pode, em seguida, classificar essas cadeias de caracteres sub. Ok, agora temos uma alça sobre o método de classificação em uma matriz. Vamos em frente e olhar para o método de matriz Join. Isso vai ser semelhante ao método string split como os métodos string split transforma uma string em uma sub string de elementos e uma matriz, o método array unido transforma esses elementos sub string em uma matriz de volta em uma string. Vamos dar uma olhada em um exemplo. Vamos supor que temos uma variável de carro vai assiná-lo. O valor da string. Honda Civic usará o método split com um argumento de uma string vazia. Isso vai transformar nosso carro em uma matriz de sub strings para cada personagem que podemos então facilmente colocar esta matriz de sub strings de volta em uma string com o método joint na matriz , nós apenas inserir uma string vazia como um argumento para chegar com o mesmo valor original. Vejamos mais um exemplo com o nosso carro. Se fizermos o método de divisão em nosso carro com um argumento de espaço string, vamos retornar um valor de uma matriz com dois elementos sub string a corda Honda no elemento de índice zero e o String Civic como um elemento no índice um. Para colocar essa string de volta juntos, usamos o método array join e passou para ele uma string com um espaço nele. Nesta questão, você quer se concentrar no que você coloca dentro desses parênteses para obter os resultados desejados. A outra chave para este algoritmo vai ser O que você vai colocar entre o método de divisão e o método de junção? Tudo bem, você tem todas as ferramentas para descobrir se duas cordas são permutações uma da outra. Vamos para o laboratório. Você tem tudo o que precisa saber para resolver esta questão. Vá em frente e dê uma chance se você estiver pronto. Mesmo que você não esteja pronto, pause o vídeo, lute com a pergunta por alguns minutos. Tente envolver sua mente em torno de algumas das possíveis soluções, em seguida, volte e eu vou orientá-lo através de um pseudo código para dar-lhe um pouco mais assistência se você precisar dele. Certo, aqui está um pseudo código para você começar. Vamos querer declarar uma função e dar-lhe um nome que podemos chamar mais tarde. Em seguida, dar-lhe-emos aos parâmetros. Vamos alimentar as duas cadeias de parâmetros que queremos comparar para ver se eles são permutações um do outro. Bem, então entre no nosso bloco de código. Nesse ponto, vamos comparar os dois argumentos que passamos para os parâmetros. Usaremos os métodos de classificação dividida e junção que aprendemos anteriormente e retornaremos o valor dessa comparação. E é isso. Eu vou apenas invocar a função com seus dois argumentos que queremos avaliar se eles são permutações um do outro ou não. Agora que você teve um pouco de assistência, vá em frente e pause o vídeo e lute com a implementação do código real no lugar do pseudo código. Como sempre, defina um temporizador. Não se contente com a solução sozinha. Vá em frente, pausar o vídeo e nos reunimos novamente em alguns instantes. Tudo bem, como ir? Vamos em frente e chegar a uma possível solução. Vamos começar declarando nossa função. Nomeá-lo é permutação e dá-lo aos parâmetros de Str um e str também que nos enviará para o livro de códigos. Nós vamos retornar o valor da comparação entre essas duas strings usando o operador de desigualdade estrita em cada argumento, vamos dividi-lo em uma matriz de sub strings para cada caractere em nosso argumento string. Vamos usar o método de classificação na matriz de modo que todos os elementos de caracteres estão na mesma ordem na matriz. Então usaremos o método de junção para unir todos os elementos da matriz em uma força . Agora, é importante que para o nosso método split, usemos uma string vazia para criar nossa nova sub string de em uma corrida. E quando usamos o nosso método join na matriz que usamos o argumento de uma string vazia para trazer esses sub strings de volta em uma string. Agora operador de qualidade pode nos informar se esses dois são idênticos. Eu vou em frente e cor função com quaisquer dois argumentos que podemos escolher para dar-lhe. Vamos em frente e dar aos argumentos. A corda volúvel e, em seguida, outra corda com os caracteres. L L L B Y A O L L VE E o resultado é verdadeiro. Ambos têm um. Um B quatro Els ganhou um V e um y Tudo bem, isso é tudo o que temos por agora. Obrigado por dar uma olhada comigo na criação de um algoritmo para determinar duas cordas ou permutações um do outro. Vemo-nos na próxima lição com a nossa próxima pergunta. 5. JavaScript the Basics - Programação funcional: Soma de Gama: Bem-vindo de volta ao script Java. O básico e esta lição vamos continuar nossa seção sobre a criação de algoritmos são desafio atual é criar um algoritmo que irá encontrar a soma de todos os números dentro de um intervalo. Suponhamos que nos foi dada uma entrada de dois números em qualquer ordem. Por exemplo, digamos um e um quatro. Este seria um intervalo de 1 a 4. Seria como um mais dois mais três mais quatro igual a 10. Vamos supor que o maior número é dado primeiro, digamos cinco e dois. Este seria um intervalo de dois a cinco que seria dois mais três mais quatro mais cinco para um total de 14. Vou em frente e fornecer-lhe a possível solução. Em poucos minutos, precisaremos saber como usar o pensamento matemático Max Method e o método matemático dot men e um loop de quatro jogados lá também. Primeiro, vamos olhar para o método matemático dot max. O método Math Max vai olhar para todos os elementos que você não tem sua matriz e retornar o valor do maior número. A matemática pensou que o Método Max retorna o maior de zero ou mais números. Vamos em frente e olhar para um exemplo, e nosso primeiro caso, 20 é claramente maior que cinco, seguido por um oito negativo. Ser maior que 20 e 25 negativos como maior do que 10 negativo deve ser um conceito muito fácil até agora, e nossa próxima função matemática que os homens serão semelhantes na natureza. Vamos ver rapidamente os homens matemáticos. A função matemático dot men retorna o menor dos números zero ou Mara. Vamos dar uma olhada em algum código. Temos variáveis X e porquê com valores de 10 e 20 negativos. Quando alimentamos esses valores para o nosso método matemático dot men, retornamos um valor de 20 negativo. Tudo bem, você tem todas as ferramentas que você precisa para resolver o problema. Vamos para o laboratório. Você pode ir em frente e pausar o vídeo agora e lutar com esse problema. Se você quiser esperar para ver o pseudo código, eu vou fornecer, talvez pausar o vídeo primeiro e tentar escrever seu próprio pseudo código em suas próprias palavras. O que você acha que pode ser um possível caminho para trabalhar em direção a uma solução. Tudo bem, vamos em frente e começar a escrever. Algum pseudo código começará declarando nossa função. Isso levará em uma matriz de dois elementos que queremos descobrir alguns desses valores e todos os números entre seu alcance. Vamos então definir três variáveis Toe um. Vamos assinar o valor máximo de nossos dois elementos de matriz. Você vai ter que se certificar de segmentar o índice de cada elemento. Teremos outra variável para definir o valor de homens de nossos dois elementos de matriz e 1/3 elemento sentado um valor temporário para um ponto de partida que, em seguida, retornar quando atingimos o nosso valor total, irá então criar um loop de quatro que vai começar no valor dos homens e iterar até Teoh e incluir o valor máximo. Isso é um pouco diferente de qualquer coisa que já fizemos antes, mas lutar com ele e você deve ser capaz de fazê-lo funcionar são quatro loop irá atualizar nosso valor temporário. Esse será o nosso resultado final que retornaremos depois de termos passado pelo nosso loop e pisado sobre o bloco de código. Em seguida, vamos chamar a nossa função com a nossa matriz de quaisquer dois elementos para encontrar o alguns deles e todos os valores no meio. Então vá em frente e pause o vídeo, dê uma foto, leve de 10 a 15 minutos e tente trabalhar através do código você mesmo. Tudo bem, como ir. Vamos em frente e olhar para uma possível solução. Vamos em frente e declarar função e chamá-la em tudo. Vou dar-lhe um parâmetro de matriz. Bem, então entre no nosso bloco de código. Vamos criar uma variável que nos dará o nosso elemento de matriz com o valor máximo. Fará isso enviando ao Max o valor da matemática. Pensei Max e passou para ele o argumento do nosso índice. Zero da nossa matriz. Um Índice, um de nosso array, que são nosso primeiro e segundo elementos. Isso atribuirá ao Tore Variable Max o maior número do nosso array. Então vamos repetir o processo em Lee com o método matemático dot men para nos dar o elemento com o menor valor finalmente vai criar uma variável que irá manter o total deste, alguns dos nossos valores e vamos começar em zero. Em seguida, vamos criar nosso loop quatro com três declarações. A primeira é a inicialização do nosso contador, que será o elemento array com o menor valor. Então vamos definir nossa condição de teste Bem, iterado pelo nosso valor de atualização de um, contanto que nosso contador seja menor ou igual ou maior número e o array, contanto que esta condição de teste seja verdadeira, entraremos em o bloco de código. Agora, nosso valor total irá adicionar o valor do número atual foram looping through. Isso nos levará de volta ao loop quatro e repita o processo até que nosso contador seja maior do que o valor da variável. Max, então, passará sobre o código e retornará o valor total. Então, agora, se chamarmos nossa função e darmos o array, tudo bem. Se você tiver algum tempo, coloque alguns outros argumentos em sua função e veja o que você obtém. Coloque o maior número em primeiro lugar ou experimente números negativos também. Obrigado por se juntar a mim. Neste desafio de criar um algoritmo, eles confinaram a parte do intervalo de dois números. Vemo-nos na nossa próxima lição com a nossa próxima pergunta. 6. JavaScript the Basics - Programação funcional: Remover elementos da cabeça: Muito bem, bem-vindo de volta a Java. Script O básico. Continuamos nosso aprofundamento em algoritmos enquanto estamos passando. Estes algoritmos foram esperançosamente reforçando sintaxe, métodos e lógica. Nós já aprendemos no curso que também estamos tentando adicionar conteúdo com cada lição que pode ser nova para você e dar-lhe um breve ensino sobre o assunto do que praticá-lo e implementá-lo na criação de um algoritmo. Dada uma matriz de elementos, vamos em frente e olhar para este desafio algoritmo lições. Dada uma matriz de elementos, queremos criar um algoritmo para retornar seu valor. Depois de cortar X quantidade de elementos da cabeça, por exemplo, suponha que foram dadas uma matriz com um carro, um barco e um ônibus. Nos será dado um número, por exemplo, um que vamos querer cortar esse número de elementos da frente da nossa matriz. Então nossa função retornaria um array com dois elementos barco e ônibus. Nossa principal ferramenta para resolver este algoritmo é o método spice em um array. Um desafio em usar o método spice em um array é ser capaz de diferenciar entre o método spice e o método slice. Seus nomes eram tão semelhantes que é fácil confundir os dois. O método fatiado retorna uma nova matriz que não altera a matriz à qual o método é aplicado. Seria como pegar uma fatia de laranja, você sabe, você sabe, ter a fatia como algo novo, e sua laranja original ainda está totalmente intacta. Se tivermos um array chamado Vehicle com o Elements Car, Boat e Bus e fazemos o método fatia removendo um elemento da cabeça, iríamos retornar nova matriz com esse elemento. Mas a matriz de veículos foi deixada intocada. O método da especiaria realmente altera ou muda a teoria removendo elementos existentes e ou adicionando novos elementos. Vamos dar uma olhada em alguma sintaxe. Primeiro, temos o ponto de partida. Este é o índice no qual começar a mudar a matriz com uma origem de zero. Se negativo e lembre-se do final, não começamos a contar em zero, começamos a contar em um. Em seguida, temos a contagem de exclusão. Este será um inteiro indicando o número de elementos antigos da matriz a serem removidos. Por último, temos os elementos adicionais. O ar do, os elementos do dedo do pé adicionam à matriz começando no índice START. Se você não especificar nenhum elemento, Spice só removerá elementos da matriz. Tudo bem, vamos em frente e olhar para alguns exemplos irá criar um array chamado nomes e atribuído a ele os valores de strings. John, Sarah, Eric e Jane. Vamos usar fatia para não remover quaisquer elementos, em vez de ir para indexar e inserir o valor da língua string. Agora, quando olhamos para nomes, temos Tom no Index em vez de Eric. Agora vamos imaginar que queremos cortar alguns elementos da nossa matriz terá como alvo o índice de três, que agora é Eric e irá remover um elemento. Nosso elemento de nomes agora é John, Sarah, Tom e Jane. Há mais que podemos fazer com o método spice, mas isso nos dá funcionalidade suficiente para realizar o que precisamos para nosso algoritmo. Vamos para o laboratório e assumir o desafio. Tudo bem agora você tem o método que pode facilmente ajudá-lo a realizar a criação de um algoritmo que satisfaça os requisitos que pedimos. Vá em frente, pause o vídeo e dê uma chance. Ou, como mencionei da última vez, pausar o vídeo e criar um pseudo código para como você pode pensar em resolver o algoritmo. Em seguida, olhe para o pseudo código que eu forneço e, em seguida, dê uma chance de resolver o problema você mesmo . Muito bem, vamos pseudo codificar isto. Vamos declarar que uma função passará para ela. Dois parâmetros, um para a matriz que estava passando como um argumento. O outro parâmetro é o número de elementos que você deseja apimentar fora da cabeça. Bem, então vá para o nosso bloco de código e anexar o método spice para a nossa matriz porque queremos retornar a nossa matriz. Isso foi alterado, então não usaremos o método slice que cria uma nova matriz. Precisamos passar para o método do tempero para argumentos. O primeiro é o ponto de partida e o segundo é quantos elementos devem ser removidos. Lembre-se, o número de elementos que você deseja remover é o argumento que você está passando quando você chama a função. Tudo bem, vá em frente, pause o vídeo e dê uma chance. São apenas alguns passos. Deve ser apenas uma questão de colocar a informação certa no lugar certo. Mesmo que você lute com isso. Tudo bem através da prática, você aprenderá tanto quando as coisas não funcionarem como quando elas trabalham voltarão unir em alguns momentos e trabalharão através de uma possível solução. Tudo bem, vamos em frente e declarar uma função chamada Chopper vai dar-lhe o parâmetro do nosso para o argumento array e vai passar para ele excesso para o número de elementos que gostaríamos de remover . Em seguida, aplicaremos o método do tempero ao nosso raio. Vamos passar esse array para argumentos. O primeiro é o ponto de partida, porque queremos cortar elementos da frente da nossa matriz será sempre iniciá-lo índice zero que começará com o primeiro elemento em nossa matriz. Nosso segundo argumento será o parâmetro de excesso de que seremos alimentados como um argumento . Quando ligarmos. Nossa função retornará nossa matriz que foi mutada. Então vamos chamar a nossa função de helicóptero passará para ele uma matriz com elementos consistindo de strings listando os meses do ano. Podemos ver que dois desses meses não estão bem, e queremos removê-los. Esta matriz vai ser passada para o nosso parâmetro chopper como a matriz. Nosso segundo argumento em nossa chamada de função é para isso representará o parâmetro de excesso em nossa função de helicóptero. E em nosso bloco co será o argumento em excesso de tempero cortando dois elementos do índice zero. E o resultado são os nossos meses normais do ano. Isso é tudo. Por agora. Obrigado por se juntar a mim e criar um algoritmo para cortar elementos da frente de Honore. Vemo-nos na nossa próxima lição com a nossa próxima pergunta. 7. JavaScript the Basics - Programação funcional: Palindrome: Muito bem, bem-vindo de volta ao script Java. O básico é um desafio. Esta lição envolve palíndromos. Ah, palíndromo é uma palavra que se escreve o mesmo para frente e para trás exemplos seria um carro de corrida, pai e nível nosso palíndromo pode ser maiúsculo e sensível. Nós não nos importamos se caracteres de string são maiúsculas ou minúsculas e considerando uma correspondência. Também não nos importamos com nenhum caractere não alfabético. Tais espaços Comus, Ford barras, hífens sublinhados e parênteses. Eles estão todos bem. Carro de corrida com o traço ainda seria considerado um palíndromo. Vamos superar este desafio. Usará a sessão intra do quadro branco para aprender sobre eles e, em seguida, ir para o laboratório e resolver alguns desafios de algoritmo. Vamos primeiro fazer uma atualização em expressões regulares. O que é uma expressão regular? Uma expressão regular é uma sequência de caracteres que formam um padrão de pesquisa. Ao pesquisar dados em um texto, você pode usar esse padrão de pesquisa para descrever o que você está procurando. Uma expressão regular pode ser um único caractere ou um padrão mais complicado. Expressões regulares podem ser usadas para executar todos os tipos de pesquisa, texto e texto. Substituir operações. Vamos dar uma olhada em alguma sintaxe. Primeiro temos o padrão que estamos tentando igualar. Então temos o modificador. Aqui está um exemplo de código. Temos o Ford Slash Leite Forward Slash I. Esta é a nossa expressão regular. leite é o padrão a ser usado na busca. Queremos usar expressões regulares para lidar com qualquer coisa estranha em nossa string como vírgulas, sublinhados de pontos e assim por diante. Então precisamos de uma expressão regular para corresponder a qualquer um desses caracteres que se encaixam nesse padrão. A barra W maiúscula vai pegar tudo isso. Corresponde a qualquer caractere que não seja palavra. Nós também precisamos usar o modificador global G. Caso contrário, nós iria Onley capturar a primeira correspondência. A outra ferramenta que você vai precisar usar é o método. Substitua em força. O método replace retorna uma nova string com algumas ou todas as correspondências de um padrão substituído por uma substituição. O padrão pode ser uma string ou uma expressão regular, e a substituição pode ser uma string ou uma função a ser chamada para cada correspondência. Vejamos alguns exemplos. Aqui está o padrão de rejeitos. Vejamos a sintaxe. Poderíamos ter uma expressão regular em que a correspondência é substituída pelo valor de retorno do segundo parâmetro. Ou em vez do padrão Reg exe, poderíamos usar uma força. Vamos fazer um exemplo rápido do método replace em uma string com uma sub string normal e um reg. Exe. Vamos em frente e criar uma string chamada Drink More Milk e um sinal de que é o anúncio de leite variável irá então criar uma variável chamada ault de leite para leite. Alternativa irá atribuí-lo o valor do método de substituição em nossa variável de anúncio de leite para argumento passará o leite sub cadeia que queremos substituir por uma nova seda sub cadeia que queremos substituí-lo por. Agora o leite Olt retorna. Beba mais seda. Certo, vamos fazer isso mais uma vez com o Reg. Exe teremos nossa variável de anúncio de leite com a bebida de valor. Mais leite irá então criar uma nova variável chamada sub leite e um sinal dela. O valor do nosso anúncio de leite, com o método de substituição anexado, passará para o método. Os argumentos do leite de expressão regular e nossa nova sublinha de leite de soja sub agora tem o valor de beber mais leite de soja. Tudo bem, agora você tem as ferramentas básicas que você precisa para resolver este desafio algoritmo. Vamos para o laboratório e tentar. Como sempre, vá em frente e pause o vídeo e escreva um pseudo código de como você pode procurar uma solução. Então vão todos em frente e passem pelo meu pseudo código. Vamos declarar uma função para verificar se uma string é um palíndromo. Nós vamos dar-lhe um parâmetro que vamos alimentar o nosso argumento string que nos levará para o bloco de código. Vamos querer nos livrar de qualquer personagem que não seja de um a Z no alfabeto. Então, usamos uma expressão regular, padrão e modificador para pegá-los todos, e vamos querer substituí-los por um valor de string que irá essencialmente excluí-los para que possamos obter uma comparação justa e igual. Vamos então usar um método para garantir que todas as letras ar maiúsculas ou minúsculas porque o nosso palíndromo pode ser insensível a maiúsculas e minúsculas. Depois de ter feito isso, queremos perguntar qual é o valor quando comparamos nossa string quando comparamos nossa string, fomos dados como um argumento se é igual ao inverso dessa string. Você pode reverter esta string com o método split, método reverso e método join se você precisar de uma pequena pista extra. Então agora nós apenas chamamos nossa função e passamos uma string como um argumento. Tudo bem, vá em frente, pause o vídeo e dê uma chance. Voltarão juntos em poucos momentos para chegar a uma possível solução. Tudo bem, como ir. Vamos chegar a uma possível solução para este desafio irá declarar uma função chamada palíndromo. Vamos dar-lhe um parâmetro de str para qualquer argumento string que vamos acabar passando para ele . Agora vamos limpar as nossas forças. Vamos definir string igual ao argumento string que estamos passados usará a barra traseira global w para corresponder a qualquer um dos caracteres não A a Z. Essas correspondências serão substituídas por uma string vazia. Literal, que essencialmente é como um botão delete, irá então usar o método para minúsculas em nossa string para tornar o nosso palíndromo maiúsculo e sensível, não importa o que o argumento string ISS. Nós também poderíamos ter usado para maiúsculas se nós também tivéssemos gostado. Agora vamos querer retornar o valor de nossa string limpa e um reverso para string. Se eles são iguais, então temos um palíndromo. Já fizemos isso antes em uma pergunta anterior. Usará o método split para transformar nossa string em uma matriz de sub strings de caracteres individuais . Em seguida, fará o método inverso na matriz para inverter a ordem, em seguida, o método de junção na matriz para transformar as cordas sub nessa matriz de volta em uma força. Em seguida, retornamos esse valor. Neste ponto, invocamos nossa função. Quando passamos para ele uma corda. Nós limpamos com a substituição e Reg exe e, em seguida, colocamos na forma minúscula. Em seguida, perguntamos se estão limpos. String é igual à nossa string invertida. Usando split, reverse e joint, o valor retornado informa se a string é um palíndromo ou não. Muito bem, obrigado por se juntar a mim neste algoritmo. Determinar se uma string é ou não um palíndromo. Vemo-nos na nossa próxima lição com a nossa próxima pergunta