舉報

會員
Clojure Data Structures and Algorithms Cookbook
最新章節(jié):
Index
Data-structuresandalgorithmsoftencrossyourpathwhenyoucompressfiles,compileprograms,accessdatabases,orsimplyuseyourfavouritetexteditor.Understandingandimplementingthemcanbedaunting.Curiouslearnersandindustrialdeveloperscanfindthesecomplex,especiallyiftheyfocusonthedetailedimplementationofthesedatastructures.Clojureisahighlypragmaticandexpressivelanguagewithefficientandeasydatamanipulationcapabilities.Assuch,itisgreatforimplementingthesealgorithms.Byabstractingawayagreatshareoftheunnecessarycomplexityresultingfromimplementation,Clojureanditscontriblibrarieswillhelpyouaddressvariousalgorithmicchallenges,makingyourdataexplorationbothprofitableandenjoyable.Through25recipes,you'llexploreadvancedalgorithmsanddata-structures,wellservedbyasoundClojureimplementation.Thisbookopenswithanexplorationofalternativeusesofthearraydata-structure,coveringLZ77compression,drawingfractalsusingPascal'striangles,simulatingamulti-threadedprogramexecution,andimplementingacall-stackwindingandun-windingoperations.Thebookelaboratesonlinkedlists,showingyouhowtoconstructdoublylinkedones,speedupsearchtimesovertheelementsofsuchstructures,usealinked-listasthefoundationofashift-reduceparser,andimplementanimmutablelinked-listusingskewbinarynumbersrepresentation.Afterthat,thetreedata-structureisexplored,focusingonbuildingself-balancingSplayTrees,designingaB-Treebacking-upanefficientkey-valuedata-store,constructinganundocapableRope,andshowinghowTriescanmakeforanauto-completingfacility.Next,someoptimizationandmachinelearningtechniquesarediscussed,namelyforbuildingaco-occurrence-basedrecommendationengine,usingbranch-and-boundtooptimizeintegralcostandprofitproblems,usingDijkstra'salgorithmtodetermineoptimalpathsandsummarizingtextsusingtheLexRankalgorithm.Particularattentionisgiventologicprogramming,youwilllearntousethistodiscoverinterestingrelationsbetweensocialwebsitedata,bydesigningasimpletypeinferencerforaminiJava-likelanguage,andbybuildingasimplecheckersgameengine.Asynchronousprogrammingwillbeaddressedandyouwilldesignaconcurrentweb-crawler,aninteractiveHTML5game,andanonlinetaxibookingplatform.Finally,you'llexploreadvancedcasesforhigherorderfunctionsinClojurewhileimplementingarecursivedescentparserusingefficientmutualresucrsion,devisingaminiresusablefirewallsimulatorthankstoClojure1.7newtansducersfeatureorbuildingasimpleunificationenginewiththehelpofContinuationPassingStyle.
目錄(54章)
倒序
- coverpage
- Clojure Data Structures and Algorithms Cookbook
- Credits
- About the Author
- About the Reviewers
- www.PacktPub.com
- Support files eBooks discount offers and more
- Preface
- What this book covers
- What you need for this book
- Who this book is for
- Sections
- Conventions
- Reader feedback
- Customer support
- Chapter 1. Revisiting Arrays
- Introduction
- Efficiently compressing a byte array
- Using Pascal's triangle to draw fractals
- Simulating multithreading using time-sharing
- Simulating a call stack using arrays
- Chapter 2. Alternative Linked Lists
- Building a doubly linked XOR list
- Speeding up access to linked list elements
- Building a simple shift-reduce parser
- Implementing a skew binary random access list
- Chapter 3. Walking Down Forests of Data
- Introduction
- Building self-balancing search-efficient splay trees
- Designing an efficient key-value store using B-trees
- Devising an undo-capable data structure using a rope
- Designing an autocomplete system using a trie
- Chapter 4. Making Decisions with the Help of Science
- Introduction
- Designing a live recommendation engine
- Resolving cost and profit optimization problems
- Finding optimal paths in a graph
- Summarizing texts by extracting the most representative sentences
- Chapter 5. Programming with Logic
- Introduction
- Querying a social website's data
- Designing a type inferencer
- Playing a round of checkers
- Chapter 6. Sharing by Communicating
- Introduction
- Building a tiny web crawler
- Designing an HTML5 game
- Designing an online taxi-booking engine
- Chapter 7. Transformations as First-class Citizens
- Introduction
- Building a recursive descent parser using trampoline
- Implementing a reusable mini-firewall using transducers
- Building a little unification engine with the continuation-passing style
- Index 更新時間:2021-07-16 20:45:06
推薦閱讀
- 算法精粹:經(jīng)典計算機科學問題的Java實現(xiàn)
- Banana Pi Cookbook
- 秒懂設計模式
- Learn WebAssembly
- PHP+MySQL+Dreamweaver動態(tài)網(wǎng)站開發(fā)實例教程
- 深度學習:算法入門與Keras編程實踐
- Tableau 10 Bootcamp
- Learning Splunk Web Framework
- HTML5移動前端開發(fā)基礎與實戰(zhàn)(微課版)
- LabVIEW數(shù)據(jù)采集
- Learning Kotlin by building Android Applications
- Android智能手機APP界面設計實戰(zhàn)教程
- Mastering Vim
- Python程序員面試算法寶典
- C#開發(fā)之道
- Git Version Control Cookbook
- Instant Buildroot
- Swift語言實戰(zhàn)晉級(第2版)
- jQuery權威指南(第2版)
- Processing與Arduino互動編程
- GWT揭秘
- Node.js Web Development
- HTTP權威指南
- CMake Cookbook
- Learn React Hooks
- Learning OpenStack High Availability
- C++程序設計習題解析與實踐教程
- Python與數(shù)據(jù)科學
- Unity Game Optimization
- Android移動開發(fā)(慕課版)