ورود به حساب

نام کاربری گذرواژه

گذرواژه را فراموش کردید؟ کلیک کنید

حساب کاربری ندارید؟ ساخت حساب

ساخت حساب کاربری

نام نام کاربری ایمیل شماره موبایل گذرواژه

برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید


09117307688
09117179751

در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید

دسترسی نامحدود

برای کاربرانی که ثبت نام کرده اند

ضمانت بازگشت وجه

درصورت عدم همخوانی توضیحات با کتاب

پشتیبانی

از ساعت 7 صبح تا 10 شب

دانلود کتاب Learning JavaScript Data Structures and Algorithms

دانلود کتاب یادگیری ساختارها و الگوریتم های داده جاوا اسکریپت

Learning JavaScript Data Structures and Algorithms

مشخصات کتاب

Learning JavaScript Data Structures and Algorithms

دسته بندی: الگوریتم ها و ساختارهای داده
ویرایش: 3 
نویسندگان:   
سری:  
ISBN (شابک) : 9781788623872, 1788623878 
ناشر: Packt Publishing 
سال نشر: 2018 
تعداد صفحات: 566 
زبان: English 
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) 
حجم فایل: 19 مگابایت 

قیمت کتاب (تومان) : 38,000



ثبت امتیاز به این کتاب

میانگین امتیاز به این کتاب :
       تعداد امتیاز دهندگان : 10


در صورت تبدیل فایل کتاب Learning JavaScript Data Structures and Algorithms به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.

توجه داشته باشید کتاب یادگیری ساختارها و الگوریتم های داده جاوا اسکریپت نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.


توضیحاتی در مورد کتاب یادگیری ساختارها و الگوریتم های داده جاوا اسکریپت

ایجاد ساختارهای داده کلاسیک و الگوریتم‌هایی مانند جستجوی عمقی و جستجوی گسترده، یادگیری بازگشتی، و همچنین ایجاد و استفاده از یک ساختار داده پشته با استفاده از ویژگی‌های کلیدی جاوا اسکریپت پیاده‌سازی ساختارهای داده رایج و الگوریتم‌های مرتبط به همراه زمینه‌ای که در آن قرار دارند. مورد استفاده قرار می‌گیرند بر ساختارهای داده جاوا اسکریپت موجود مانند آرایه‌ها، مجموعه‌ها و نقشه‌ها مسلط شوند و یاد بگیرند که چگونه موارد جدیدی مانند پشته‌ها، فهرست‌های پیوندی، درخت‌ها و نمودارها را در ES 8 پیاده‌سازی کنند. زبان شرح کتاب ساختار داده روشی خاص برای سازماندهی داده ها در رایانه برای استفاده کارآمد از منابع است. ساختار داده ها و الگوریتم ها پایه هر راه حلی برای هر مشکل برنامه نویسی هستند. با این کتاب یاد خواهید گرفت که با استفاده از آخرین ویژگی های ES 2017 کدهای پیچیده و قدرتمند بنویسید. یادگیری ساختارها و الگوریتم های داده جاوا اسکریپت با پوشش اصولی جاوا اسکریپت آغاز می شود و شما را با ECMAScript 2017 آشنا می کند، قبل از اینکه به تدریج به سراغ مهم ترین ساختارهای داده مانند آرایه ها، صف ها، پشته ها و لیست های پیوندی بروید. شما دانش عمیقی در مورد نحوه عملکرد جداول هش و مجموعه ساختارهای داده و همچنین نحوه استفاده از درختان و نقشه های هش برای جستجوی فایل ها در HD یا نمایش یک پایگاه داده کسب خواهید کرد. این کتاب به عنوان مسیری عمل می کند تا شما را عمیق تر به جاوا اسکریپت ببرد. همچنین درک بیشتری از چرایی و چگونگی استفاده از نمودارها، یکی از پیچیده ترین ساختارهای داده، در سیستم های ناوبری GPS در شبکه های اجتماعی خواهید داشت. در پایان کتاب، متوجه خواهید شد که چگونه تمام نظریه های ارائه شده در این کتاب را می توان برای حل مشکلات دنیای واقعی در حین کار بر روی شبکه های کامپیوتری خود و جستجوهای فیس بوک به کار برد. آنچه یاد خواهید گرفت اعلام، مقداردهی اولیه، افزودن و حذف آیتم ها از آرایه ها، پشته ها و صف ها ایجاد و استفاده از لیست های پیوندی، لیست های پیوندی دوگانه و لیست های پیوند خورده دایره ای عناصر منحصر به فرد را با جداول هش، دیکشنری ها و مجموعه ها کاوش کنید. استفاده از باینری را کاوش کنید. درخت‌ها و درخت‌های جستجوی دودویی مرتب‌سازی ساختارهای داده با استفاده از الگوریتم‌هایی مانند مرتب‌سازی حبابی، مرتب‌سازی انتخابی، مرتب‌سازی درج، مرتب‌سازی ادغام و مرتب‌سازی سریع عناصر جستجو در ساختارهای داده با استفاده از مرتب‌سازی متوالی و جستجوی دودویی، اگر توسعه‌دهنده جاوا اسکریپت هستید، این کتاب برای چه کسی است. کسانی که می خواهند عمیقاً در جاوا اسکریپت غوطه ور شوند و با استفاده از ساختارهای داده و الگوریتم های جاوا اسکریپت برنامه های پیچیده بنویسند، این کتاب برای شما مناسب است.


توضیحاتی درمورد کتاب به خارجی

Create classic data structures and algorithms such as depth-first search and breadth-first search, learn recursion, as well as create and use a heap data structure using JavaScript Key Features Implement common data structures and the associated algorithms along with the context in which they are used Master existing JavaScript data structures such as arrays, sets, and maps, and learn how to implement new ones such as stacks, linked lists, trees, and graphs in ES 8 Develop abstract data types to make JavaScript a more flexible and powerful programming language Book Description A data structure is a particular way of organizing data in a computer to utilize resources efficiently. Data structures and algorithms are the base of every solution to any programming problem. With this book, you will learn to write complex and powerful code using the latest ES 2017 features. Learning JavaScript Data Structures and Algorithms begins by covering the basics of JavaScript and introduces you to ECMAScript 2017, before gradually moving on to the most important data structures such as arrays, queues, stacks, and linked lists. You will gain in-depth knowledge of how hash tables and set data structures function as well as how trees and hash maps can be used to search files in an HD or represent a database. This book serves as a route to take you deeper into JavaScript. You'll also get a greater understanding of why and how graphs, one of the most complex data structures, are largely used in GPS navigation systems in social networks. Toward the end of the book, you'll discover how all the theories presented in this book can be applied to solve real-world problems while working on your own computer networks and Facebook searches. What you will learn Declare, initialize, add, and remove items from arrays, stacks, and queues Create and use linked lists, doubly linked lists, and circular linked lists Store unique elements with hash tables, dictionaries, and sets Explore the use of binary trees and binary search trees Sort data structures using algorithms such as bubble sort, selection sort, insertion sort, merge sort, and quick sort Search elements in data structures using sequential sort and binary search Who this book is for If you're a JavaScript developer who wants to dive deep into JavaScript and write complex programs using JavaScript data structures and algorithms, this book is for you.



فهرست مطالب

Colaboradores
Prefácio
capítulo 1
	JavaScript – uma visão geral rápida
		Estrutura de dados e algoritmos em JavaScript
		Configurando o ambiente
		Configuração mínima para trabalhar com JavaScript
		Usando servidores web
		http-server do Node.js
		Básico sobre o JavaScript
		Variáveis
		Escopo das variáveis
		Operadores
		Verdadeiro e falso
		Funções dos operadores de igualdade (== e ===)
		Estruturas de controle
		Instruções condicionais
		Laços
		Funções
		Programação orientada a objetos em Javascript
		Depuração e ferramentas
		Depuração com o VSCode
		Resumo
capítulo 2
	Visão geral sobre ECMAScript e TypeScript
		ECMAScript ou JavaScript?
		ES6, ES2015, ES7, ES2016, ES8, ES2017 e ES.Next
		Tabela de compatibilidade
		Usando o Babel.js
		Funcionalidades das versões ECMAScript 2015+
		let e const no lugar de var
		Escopo de variáveis com let e const
		Templates literais
		Funções de seta
		Valores default para parâmetros de funções
		Declarando os operadores de espalhamento e rest
		Propriedades melhoradas de objetos
		Programação orientada a objetos com classes
		Herança
		Trabalhando com getters e setters
		Operador de exponencial
		Módulos
		Executando módulos ES2015 no navegador e com o Node.js
		Usando importações nativas da ES2015 no Node.js
		Executando módulos ES2015 no navegador
		Compatibilidade de versões anteriores a ES2015+
		Introdução ao TypeScript
		Inferência de tipo
		Interfaces
		Genéricos
		Outras funcionalidades do TypeScript
		Verificações do TypeScript em tempo de compilação em arquivos JavaScript
		Resumo
capítulo 3
	Arrays
		Por que devemos usar arrays?
		Criando e inicializando arrays
		Acessando elementos e fazendo uma iteração em um array
		Acrescentando elementos
		Inserindo um elemento no final do array
		Usando o método push
		Inserindo um elemento na primeira posição
		Usando o método unshift
		Removendo elementos
		Removendo um elemento do final do array
		Removendo um elemento da primeira posição
		Usando o método shift
		Adicionando e removendo elementos de uma posição específica
		Arrays bidimensionais e multidimensionais
		Iterando pelos elementos de arrays bidimensionais
		Arrays multidimensionais
		Referências para métodos de array em JavaScript
		Juntando vários arrays
		Funções de iteração
		Iterando com o método every
		Iterando com o método some
		Iterando com forEach
		Usando map e filter
		Usando o método reduce
		ECMAScript 6 e as novas funcionalidades de array
		Iterando com o laço for…of
		Usando o objeto @@iterator
		Métodos entries, keys e values de array
		Usando o método from
		Usando o método Array.of
		Usando o método fill
		Usando o método copyWithin
		Ordenando elementos
		Ordenação personalizada
		Ordenando strings
		Pesquisa
		ECMAScript 2015 – os métodos find e findIndex
		ECMAScript 2016 – usando o método includes
		Convertendo um array em uma string
		Classe TypedArray
		Arrays em TypeScript
		Resumo
capítulo 4
	Pilhas
		Criação de uma biblioteca de estruturas de dados e algoritmos JavaScript
		Estrutura de dados de pilha
		Criando uma classe Stack baseada em array
		Push de elementos na pilha
		Pop de elementos da pilha
		Dando uma espiada no elemento que está no topo da pilha
		Verificando se a pilha está vazia
		Limpando os elementos da pilha
		Usando a classe Stack
		Criando uma classe JavaScript Stack baseada em objeto
		Push de elementos na pilha
		Verificando se a pilha está vazia e o seu tamanho
		Pop de elementos da pilha
		Dando uma espiada no topo e limpando a pilha
		Criando o método toString
		Protegendo os elementos internos da estrutura de dados
		Convenção de nomenclatura com underscore
		Classes ES2015 com símbolos no escopo
		Classes ES2015 com WeakMap
		Proposta para campos de classe na ECMAScript
		Resolvendo problemas usando pilhas
		Convertendo números decimais para binários
		Algoritmo conversor de base
		Resumo
capítulo 5
	Filas e deques
		Estrutura de dados de fila
		Criando a classe Queue
		Inserção de elementos na fila
		Remoção de elementos da fila
		Dando uma espiada no elemento que está na frente da fila
		Verificando se a pilha está vazia e o seu tamanho
		Limpando a fila
		Criando o método toString
		Usando a classe Queue
		Estrutura de dados de deque
		Criando a classe Deque
		Adicionando elementos na frente do deque
		Usando a classe Deque
		Resolvendo problemas usando filas e deques
		Fila circular – Batata Quente
		Verificador de palíndromo
		Filas de tarefas em JavaScript
		Resumo
capítulo 6
	Listas ligadas
		Estrutura de dados da lista ligada
		Criando a classe LinkedList
		Inserindo elementos no final da lista ligada
		Removendo elementos de uma posição específica da lista ligada
		Percorrendo a lista com um laço até alcançar a posição desejada
		Refatorando o método remove
		Inserindo um elemento em qualquer posição
		Método indexOf: devolvendo a posição de um elemento
		Removendo um elemento da lista ligada
		Métodos isEmpty, size e getHead
		Método toString
		Listas duplamente ligadas
		Inserindo um novo elemento em qualquer posição
		Removendo elementos de qualquer posição
		Listas ligadas circulares
		Inserindo um novo elemento em qualquer posição
		Removendo elementos de qualquer posição
		Listas ligadas ordenadas
		Inserindo elementos na ordem
		Criando a classe StackLinkedList
		Resumo
capítulo 7
	Conjuntos
		Estruturando um conjunto de dados
		Criando uma classe Set
		Método has(element)
		Método add
		Métodos delete e clear
		Método size
		Método values
		Usando a classe Set
		Operações em conjuntos
		União de conjuntos
		Intersecção de conjuntos
		Aperfeiçoando o método intersection
		Diferença entre conjuntos
		Subconjunto
		ECMAScript 2015 – a classe Set
		Operações com a classe Set da ES2015
		Simulando a operação de união
		Simulando a operação de intersecção
		Simulando a operação de diferença
		Usando o operador de espalhamento
		Multiconjuntos ou bags
		Resumo
capítulo 8
	Dicionários e hashes
		Estrutura de dados de dicionário
		Criando a classe Dictionary
		Verificando se uma chave está presente no dicionário
		Definindo uma chave e um valor no dicionário, e a classe ValuePair
		Removendo um valor do dicionário
		Obtendo um valor do dicionário
		Métodos keys, values e valuePairs
		Iterando pelos ValuePairs do dicionário com forEach
		Métodos clear, size, isEmpty e toString
		Usando a classe Dictionary
		Tabela hash
		Criando uma classe HashTable
		Criando uma função de hash
		Inserindo uma chave e um valor na tabela hash
		Obtendo um valor da tabela hash
		Removendo um valor da tabela hash
		Usando a classe HashTable
		Tabela hash versus conjunto hash
		Tratando colisões nas tabelas hash
		Encadeamento separado
		Método put
		Método get
		Método remove
		Sondagem linear
		Método put
		Método get
		Método remove
		Criando funções melhores de hash
		Classe Map da ES2015
		Classes WeakMap e WeakSet da ES2015
		Resumo
capítulo 9
	Recursão
		Entendendo a recursão
		Calculando o fatorial de um número
		Fatorial iterativo
		Fatorial recursivo
		Pilha de chamadas
		Limitação do tamanho da pilha de chamadas em JavaScript
		Sequência de Fibonacci
		Fibonacci iterativo
		Fibonacci recursivo
		Fibonacci com memoização
		Por que usar recursão? É mais rápido?
		Resumo
capítulo 10
	Árvores
		Estrutura de dados de árvore
		Terminologia de árvores
		Árvore binária e árvore binária de busca
		Criando as classes Node e BinarySearchTree
		Inserindo uma chave na BST
		Percorrendo uma árvore
		Percurso em-ordem
		Percurso pré-ordem
		Percurso pós-ordem
		Pesquisando valores em uma árvore
		Pesquisando valores mínimos e máximos
		Pesquisando um valor específico
		Removendo um nó
		Removendo uma folha
		Removendo um nó com um filho à esquerda ou à direita
		Removendo um nó com dois filhos
		Árvores autobalanceadas
		Árvore de Adelson-Velskii e Landi (árvore AVL)
		Altura de um nó e o fator de balanceamento
		Operações de balanceamento – rotações na árvore AVL
		Rotação Esquerda-Esquerda: rotação simples à direita
		Rotação Direita-Direita: rotação simples à esquerda
		Esquerda-Direita: rotação dupla à direita
		Direita-Esquerda: rotação dupla à esquerda
		Inserindo um nó na árvore AVL
		Removendo um nó da árvore AVL
		Árvore rubro-negra
		Inserindo um nó na árvore rubro-negra
		Verificando as propriedades da árvore rubro-negra após a inserção
		Rotações na árvore rubro-negra
		Resumo
capítulo 11
	Heap binário e heap sort
		Estrutura de dados do heap binário
		Criando a classe MinHeap
		Representação da árvore binária com um array
		Inserindo um valor no heap
		Operação de sift up
		Encontrando os valores mínimo e máximo no heap
		Extraindo os valores mínimo e máximo do heap
		Operação de sift down
		Criando a classe MaxHeap
		Algoritmo de heap sort
		Resumo
capítulo 12
	Grafos
		Terminologia dos grafos
		Grafos direcionados e não direcionados
		Representando um grafo
		A matriz de adjacências
		Lista de adjacências
		Matriz de incidências
		Criando a classe Graph
		Percorrendo grafos
		Busca em largura (BFS)
		Encontrando os caminhos mais curtos usando BFS
		Estudos adicionais sobre algoritmos de caminhos mais curtos
		Busca em profundidade (DFS)
		Explorando o algoritmo DFS
		Ordenação topológica usando DFS
		Algoritmos de caminho mais curto
		Algoritmo de Dijkstra
		Algoritmo de Floyd-Warshall
		Árvore de extensão mínima (MST)
		Algoritmo de Prim
		Algoritmo de Kruskal
		Resumo
capítulo 13
	Algoritmos de ordenação e de busca
		Algoritmos de ordenação
		Bubble sort
		Bubble sort melhorado
		Selection sort
		Insertion sort
		Merge sort
		Quick sort
		Processo de partição
		Quick sort em ação
		Counting sort
		Bucket sort
		Radix sort
		Algoritmos de busca
		Busca sequencial
		Busca binária
		Busca por interpolação
		Algoritmos de embaralhamento
		Algoritmo de embaralhamento de Fisher-Yates
		Resumo
capítulo 14
	Designs de algoritmos e técnicas
		Dividir e conquistar
		Busca binária
		Programação dinâmica
		Problema do número mínimo de moedas para troco
		Problema da mochila
		Maior subsequência comum
		Multiplicação de cadeia de matrizes
		Algoritmos gulosos
		Problema do número mínimo de moedas para troco
		Problema fracionário da mochila
		Algoritmos de backtracking
		Rato em um labirinto
		Solucionador de sudoku
		Introdução à programação funcional
		Programação funcional versus programação imperativa
		ES2015+ e a programação funcional
		Caixa de ferramentas funcional de JavaScript – map, filter e reduce
		Bibliotecas e estruturas de dados funcionais de JavaScript
		Resumo
capítulo 15
	Complexidade de algoritmos
		Notação big-O
		Compreendendo a notação big-O
		O(1)
		O(n)
		O(n2)
		Comparando as complexidades
		Estruturas de dados
		Grafos
		Algoritmos de ordenação
		Algoritmos de busca
		Introdução à teoria de NP-completo
		Problemas impossíveis e algoritmos heurísticos
		Divertindo-se com algoritmos
		Resumo




نظرات کاربران