BackendDeveloperHandBook
  • Basic 基础
    • ProgrammingThinking 编程思维
    • ProgrammingParadigm 编程范式
    • ComputerOrganization 计算机组成原理
    • OperationSystem 操作系统
      • IO 多路复用
      • DMA
    • DesignPatterns 设计模式
  • Architecture 架构
    • Microservice 微服务
      • Apollo
      • Nacos
      • ReverseProxy
        • Nginx
      • Gateway
      • SpringCloud
    • HighConcurrency 高并发
    • SRE(Site Reliability Engineering) 网站可靠性建设
      • APM(Application Performance Management) 应用性能管理
        • MonitoringAndAlertingn 监控告警
          • Promethus
            • Exporter
    • WorkFlow工作流引擎
    • LowCode低代码平台
    • PerformanceOptimization 性能调优
      • InfrastructureOptimization 基础设施优化
        • ZeroCopy 零拷贝
    • DDD(DomainDrivenDesign) 领域驱动设计
    • Accounts 账号
      • Authentication 鉴权
      • Login 登录
  • Language 编程语言
    • Java
      • Spring
      • SpringBoot
      • JVM
      • Lock
      • GarbageCollection
      • IO
      • Thread
        • Threadpool
          • The principle of thread reuse in a threadpool 线程池中线程实现复用的原理
    • Go
    • C#
  • Distribute System 分布式系统
    • CAP
    • CoordinationService 分布式协调服务
    • DistributeLock 分布式锁
    • DistributeId 分布式Id
    • DistributedSystemDesignPatterns
  • Algorithm and data structure 算法与数据结构
    • Dynamic Programming 动态规划
    • CommonDataStructure 常用数据结构
    • AlgorithmicThinking 算法思想
      • DivdeAndConquer
    • BloomFilter 布隆过滤器
  • Database 数据库
    • MySQL
    • SQLServer
    • NoSQL
      • Redis
        • RedisDistributeLock redis分布式锁
        • RedisBottomLevelDataStructure
        • RedisHighAvailability Redis高可用方案
        • RedisPerformanceOptimization Redis性能调优
        • RedisIO
        • RedisDuration Redis持久化
        • RedisUsage Redis应用场景
      • MongoDB
    • Oracle
  • BigData 大数据
    • TiDB
    • HBase
    • DataWorks
    • MaxComputer
    • Cassendra
  • Network 网络
    • TCP
    • HTTP
    • Spider 爬虫
  • Middleware 中间件
    • MessageQueue 消息队列
    • ElasticSearch
    • Netty
    • MyBatis
    • Tomcat
  • DevOps 运维
    • CICD 持续基础与部署
      • Git
      • Deployment
    • kubernetes k8s
    • GreyRelease 灰度发布
    • Docker
  • Managment 管理
    • ProjectManagment项目管理
    • Organization 组织架构
    • TeamManagment 团队管理
  • Product 产品
    • OMS
    • Payment
    • ERP
    • WMS
    • Saas
  • Others
    • JD
    • ProjectIntroduction 项目介绍
  • Readme 后记
  • References 参考
Powered by GitBook
On this page
  • 枚举算法思想
  • 递推算法思想
  • 递归算法思想
  • 分治算法思想
  • 贪心算法思想
  • 回溯法
  • 迭代算法
  • 模拟算法思想
  1. Algorithm and data structure 算法与数据结构
  2. AlgorithmicThinking 算法思想

DivdeAndConquer

算法思想有很多,下面是常见的一些思想。

枚举算法思想

也可称为穷举法,面对问题时尝试每一种解决方法。

递推算法思想

在枚举过程中利用中间推论,逐步递推,直到结果为止。

递归算法思想

通过调用自身实现

分治算法思想

分治算法通过求出子问题的解,就可得到原问题的解,一般包括,分解,求解,合并。

贪心算法思想

贪心算法通过求解局部最优解,达到解决整体最有解,可以看出动态规划的一种特例。

回溯法

回溯法先暂时放弃关于问题规模大小的限制,并将问题的候选解按某种顺序逐一进行枚举和检验。当发现当前候选解不可能是正确的解时,就选择下一个候选解。

迭代算法

迭代法也称辗转法,是一种不断用变量的旧值递推新值的过程,在解决问题时总是重复利用一种方法。与迭代法相对应的是直接法(或者称为一次解法),即一次性解决问题。迭代法又分为精确迭代和近似迭代。“二分法”和“牛顿迭代法”属于近似迭代法,功能都比较类似。

模拟算法思想

模拟是对真实事物或者过程的虚拟。在编程时为了实现某个功能,可以用语言来模拟那个功能,模拟成功也就相应地表示编程成功。

PreviousAlgorithmicThinking 算法思想NextBloomFilter 布隆过滤器

Last updated 1 year ago