zoukankan      html  css  js  c++  java
  • #QBXT2020十一 Day1 上课笔记

    基础算法

    枚举

    上来就是水仙花数

    寻找三位数:多种枚举方式,代码难度不同

    选择代码难度小、好写的枚举方法

    搜索

    • 深度优先搜索
    • 广度优先搜索
    • 记忆化搜索
    • 迭代加深搜索
    • AStar
    • IDA*
    • Meet In The Middle
    • 爬山算法
    • 模拟退火

    老师甚至讲了dfs爆搜最短路, dfs爆搜全宇宙……

    (DFS)

    DFS求解图中环

    记录vis数组,查找是否重复访问节点(记录是否入栈,即搜索过后要将vis归零)

    八皇后问题

    按行搜索或者按照列搜索。

    NOI1999 生日蛋糕

    剪枝方法:

    • 最优化剪枝:如果在当前情况下已经累计得到的表面积大于当前拥有的答案,就停止搜索
    • 当前的体积大于题目要求,则停止搜索
    • 当前体积+之后最大的体积小于要求的体积,则返回
    • 枚举开始的边界:这层的半径和高是上层开始还剩下的层数

    (BFS)

    老师讲了单源最短路径(?)

    单源最短路径( ightarrow)多源最短路经有一种方法:同时将多个起点入队。

    “给定一个图,每条边的边权为0或者1,如何用广度优先搜索求单源最短路?”

    • 双端队列:把零从队首拓展,把一从队尾拓展

    [HAOI2008] 移动玩具

    状压+构图+连边+最短路

    记忆化搜索:适合拓扑序下的DP

  • 相关阅读:
    多任务异步操作在爬虫中的应用
    selenium怎样避免被服务器检测
    python查看文件夹下所有文件
    使用selenium实现站长素材图片采集
    云打码接口
    django的请求生命周期
    django中间件
    Python之Hello World的条件输出实例
    项目要部署到远程的服务器:
    饭侠main.js
  • 原文地址:https://www.cnblogs.com/Cao-Yucong/p/13758991.html
Copyright © 2011-2022 走看看