![](https://img-blog.csdnimg.cn/20190918140145169.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构 学习笔记
数据结构算法python实现记录
CHERISHGF
多读书,多思考
展开
-
堆——优先队列
例1:实现大堆操作。原创 2023-07-04 14:32:09 · 46 阅读 · 0 评论 -
队列——层次遍历,循环队列,单调队列
队列实现,python内置队列。原创 2023-07-04 13:50:56 · 1317 阅读 · 0 评论 -
栈——单调栈
栈是一种数据结构,数组是实现它的方式在python中,stack=[]stack.append(),往数组末尾添加一个元素stack.pop(),数组末尾的元素弹出这样就实现了一个栈的数据结构。原创 2023-07-04 13:22:15 · 48 阅读 · 0 评论 -
决策树
决策树特征:最优特征。例如:是否有房切分点:最优切分点。例如:1是;0否分类树的生成,基尼系数构建一颗二叉树1.遍历每个特征,计算每个特征下每个切分点的基尼系数比如,所有样本都有两类,有房没房,属于有房的概率为Pk.对于给定的样本集合D,其基尼系数为这是划分前,每个特征,每个切分点的计算公式2.按照上面选好的最有特征及最优划分点,在最优特征的条件下,集合D的基尼指数定义为3.如果划分后的基尼系数比我之前保存的最小的系数还小,九江此次划分的特征以及切分点保存原创 2020-09-28 09:15:29 · 98 阅读 · 0 评论 -
二叉树中序遍历
tree = [1, 2, 3, 4, None, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]def middle_traversal(tree: list) -> list: l = [] s = [] node = tree[0] while s or node: while node: s.append(node) if (tree.index(node) + 1).原创 2020-09-28 16:43:52 · 274 阅读 · 0 评论 -
二叉树 深度优先遍历应用
打印某一深度所有结点打印某一深度所有叶子结点# -*- coding: utf-8 -*-"""@Description: @Author: gaofan@Date: 2020-09-29 14:12"""class TreeNode: def __init__(self, x, left=0, right=0): self.val = x self.left = left self.right = rightclas原创 2020-09-29 18:03:03 · 176 阅读 · 0 评论 -
粒子群算法
算法介绍每个寻优的问题解都被想象成一只鸟,称为“粒子”。所有粒子都在一个D维空间进行搜索。所有的粒子都由一个fitness function确定适应值以判断目前位置的好坏。每个粒子必须赋予记忆功能,能记住所搜寻到的最佳位置。每个粒子还有一个速度以决定飞行的距离和方向。这个速度根据本身的飞行经验以及同伴的飞行经验进行动态调整。https://www.bilibili.com/video/BV1Ph411d781?p=1B站视频,老师讲的非常详细,懂了~...原创 2020-09-01 15:11:26 · 161 阅读 · 0 评论 -
判断一个点是否在多边形区域内
主要是用在地图上判断网上看到主要有两种方式1.PNPoly 算法写的原理,先留个坑2.射线法原创 2020-05-27 11:26:08 · 545 阅读 · 0 评论