Giter VIP home page Giter VIP logo

cbpk / algorithms Goto Github PK

View Code? Open in Web Editor NEW

This project forked from microwind/algorithms

0.0 0.0 0.0 19.51 MB

各种经典算法+数据结构源码,按不同语言实现,包括Java/C/Python/Go/JS/TS/Dart/Rust/Kotlin等

License: MIT License

JavaScript 25.62% C++ 1.38% Python 13.59% C 18.00% Objective-C 0.19% Java 17.50% Go 11.33% Rust 0.35% Kotlin 0.12% Dart 2.44% TypeScript 9.38% Swift 0.11%

algorithms's Introduction

理解算法与数据结构,学习不同编程语言 English

不同语言实现算法与数据结构,包括 C Java Python JavaScript Go TypeScript Dart Swift Kotlin 等,提供充分注释说明。

  1. 包括数值计算、字符查找、树遍历、排序、动态规划等不同算法。
  2. 每个算法均由多种语言实现,通过实际例子,理解不同语言的特色。
  3. 样例均精心打造,适合学生或程序员学习和分析,提升编程水平。

常见的算法有哪些?

  • 文本查找:包括线性搜索、二分搜索、树形搜索、最大公共子序列、回文计算等。主要是针对字符串进行查找。
  • 数学计算:包括进制转换、开平方、斐波那契数列、质因数分解、数字三角形等。主要是进行数值的运算。
  • 排序算法:包括冒泡、选择、插入、希尔、归并、快速、堆、计数、桶、基数等。用于按顺序排列成员。
  • 其他算法:包括动态规划、贪心算法、分治算法、回溯算法、图算法(如广度优先搜索、深度优先搜索、Dijkstra算法、Kruskal算法等)。此外,还有机器学习和人工智能算法,包括分类算法、聚类算法、深度学习、强化学习等。

常见算法**

贪心算法(Greedy Algorithm)、分治算法(Divide and Conquer)、动态规划(Dynamic Programming)、回溯算法(Backtracking)、图算法(Graph Algorithms)、分支界限(Branch and Bound)等。详见:10大算法**

常见算法例子

10大经典排序算法

字符串搜索与查找

树搜索与遍历

质因数分解

数组列表去重复项

递归

数学计算

日期与日历

数据结构

数据结构就是数据组织与存储方式,也就是把数据聚合在一起,以便进行加工整理。把数据从一种结构换成另一种结构就是数据处理,这是编程最常见的工作。详见:数据结构概述

数组(Array)

  • 数组,聚合数据的集合,可以实现线性和非线性

链表(Linked List)

  • 链表,线性结构,数据以链式结构存储

树(Tree)

  • ,非线性结构,模拟树状结构性质的数据集合,一个顶点

堆(Heap)

  • ,非线性结构,特殊的树形数据结构,一般指完全二叉树

栈(Stack)

  • ,线性结构,后进先出

队列(Queue)

  • 队列,线性结构,先进先出

图(Graph)

  • ,非线性结构,节点相互连接,每个节点都可以作为顶点

散列(Hash)

  • 散列,线性结构,根据键访问储存位置的数据结构

结构体(Struct)

相关链接

欢迎加入共建

本文链接 https://github.com/microwind/algorithms

如果您对这个感兴趣,请加我weixin: springbuild 或者邮件: [email protected] [email protected] 欢迎一起共建!

algorithms's People

Contributors

jarry avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.