美文网首页
基础算法学习与实践

基础算法学习与实践

作者: 幻雪寒臣 | 来源:发表于2021-04-18 16:13 被阅读0次

数组&链表

        1. 快慢指针的方式实现判断链表是否有环

栈和队列

        1. 栈实现队列(负负得正)

        2. 队列实现栈(复杂一些)

        3. Java API-Stack是个类;Queue是个接口(LinkedList是其一个实现类)

优先队列

哈希表

树、二叉树、二叉搜索树

二叉树遍历

    DFS - 递归代码

  伪代码:   

        private void dfs(node){

                //1. process for current node

                for(kidNood in node.getKids()){

                    //2. 如果是图,则加上判断该kidNood是否已经访问过

                    dfs(kidNood);

                }

        }

    BFS - 非递归

         private void bfs(){

                  queue.add(root);

                  while(!queue.isEmpty()){

                            currrentNode = queue.poll();

                             //process for currentNode

                            for(kidNood in node.getKids()){          

                                     queue.add()

                            }

                    }    

        }

位运算

    优点,使用二进制计算,计算速度会快于十进制。

    缺点,计算机思维。需要背一些常用的功能。否则比较难于应用。

剪枝

    应用在搜索领域,为了降低计算的空间。设置一些剪枝的条件。深蓝(国际象棋机器人)、AlphaGo 就会应用这种

递归、分治

  - [ ] 贪心算法

  - [ ] 二分查找

  - [ ] 字典树

  - [ ] 动态规划

  - [ ] 并查集

相关文章

  • 机器学习 -- 绪论(一)人工智能定义

    课程内容安排 机器学习绪论 Python语言基础 分类算法及应用实践 回归算法及应用实践 聚类算法与关联分析 深度...

  • 秋招笔记--推荐算法岗

    目录 一、数据结构与算法 二、机器学习基础 三、深度学习基础 四、推荐系统 五、实践经历

  • 理清头绪,动手和思考

    工程思想!工程实践! 扎实专业基础!内功深厚! 算法,控制理论算法! 学习能力!

  • 基础算法学习与实践

    数组&链表 1. 快慢指针的方式实现判断链表是否有环 栈和队列 1. 栈实现队列(负负得正) ...

  • kaggle博客

    数据挖掘完整流程机器学习基础与实践(一)----数据清洗 10 种机器学习算法的要点(附 Python 和 R 代...

  • 机器学习—路线图

    机器学习数据处理步骤: 机器学习基础与实践(一)----数据清洗 机器学习基础与实践(二)----数据转换 机器学...

  • 如何学习数据结构与算法

    算法学习经验 推荐: 入门: 数据结构启蒙:《数据结构与算法分析——C 语言描述》 算法启蒙:《算法设计与分析基础...

  • 第一章(1.2) 机器学习算法工程师技能树

    一、机器学习算法工程师需要掌握的技能 机器学习算法工程师需要掌握的技能包括 (1)基础数据结构与算法 树与相关算法...

  • 数据结构, 算法, 设计模式资料

    资料 实践, 阅读, 思考并行 资料数据结构, 算法设计模式 数据结构, 算法 计算机科学的基础 零基础学算法 大...

  • 阶段02#大三·下

    A 书籍 C程序设计语言 Java学习指南 C++语言基础教程 数据结构与算法分析 算法设计与分析基础 计算机网络...

网友评论

      本文标题:基础算法学习与实践

      本文链接:https://www.haomeiwen.com/subject/qntbphtx.html