数据结构与算法

【numpy笔记_4】索引、高级索引和切片

得益于模块功能的强大,numpy的索引方式玩得很花,索引也分为常规索引和高级索引,花式索引。 numpy的索引和切片逻辑与list十分相似,基本都以index为基。 之前提到结构化数组通过"name"的方式索引,有点像pandas的列名索引,这里先不多提,整体也好理解。 你可能猜到了,numpy的索引同样从零开始。 先把索引操作放一边,尝试理解它的逻辑: 虽然探究numpy的源代码并不容易,我们试

通俗易懂->哈希表详解

目录一、什么是哈希表?1.1哈希表长什么样?1.2为什么会有哈希表?1.3哈希表的特点1.3.1 取余法、线性探测1.3.2 映射1.3.3负载因子1.4哈希桶1.5闲散列与开散列1.6总结二、设计hash表1、哈希表的设计  1)插入  2)查找 3)删除4)字符串哈希算法2、封装map和set1、

力扣Hoot100-最小覆盖子串

LeetCode最小覆盖子串|滑动窗口+字符计数,从踩坑到AC完整复盘Hello 算法人!今天跟大家分享一道LeetCode经典难题——最小覆盖子串(LeetCode 76),这道题是「滑动窗口」+「字符计数」的完美结合,也是我踩了好几个坑才彻底搞懂的题目。本文会从题目解析、核心思路、

Linux Socket编程核心:深入解析sockaddr数据结构族

Linux Socket编程核心:深入解析sockaddr数据结构族 引言:网络编程的基石 一、sockaddr:通用套接字地址结构 1.1 基本定义与设计哲学 1.2 为什么需要这样的设计? 二、sockaddr家族成员详解 2.1 IPv4专用结构:sockaddr_in 2.2 IPv6专用结构&#

无需编程,基于甲骨文oracle数据库零代码生成CRUD增删改查RESTful API接口

无需编程,基于甲骨文oracle数据库零代码生成CRUD增删改查RESTful API接口 回顾 通过之前一篇文章 无需编程,基于PostgreSQL零代码生成CRUD增删改查RESTful API接口 的介绍,采用抽象工厂设计模式,已经支持了大象数据库PostgreSQL。之前通过字符串拼接生成DDL SQL语句,比较繁琐。本文开始,引入了FreeMarker模版引擎,通过配置模版实现创建和修改

优选算法——链表

 💁‍♂️个人主页:进击的荆棘 👇作者其它专栏: 《数据结构与算法》《算法》《C++起始之路》 相关题解1.两数相加 算法思路(模拟):两个链表都是逆序存储数字的,即两个链表的个位数、十位数等都已经对应,可以直接相加。在相加过程中&#xf

数据结构:手撕堆和哈希表,字符串哈希详解----小白也能懂

   🎬 博主名称:个人主页 🔥 个人专栏: 《算法通关》,《Java讲解》 ⛺️心简单,世界就简单 序言 其实是想把这篇写到上一篇里面的,但是中途困了,趴桌子上睡着了,真是没招 这篇文章,来手撕 堆和哈希表,这一般面试可

【烧脑算法】Dijkstra 算法:解决最短路问题

目录前言核心思想Dijkstra经典题目743. 网络延迟时间3341. 到达最后一个房间的最少时间 I3342. 到达最后一个房间的最少时间 II3112. 访问消失节点的最少时间3604. 有向图中到达终点的最少时间2642. 设计可以求最短路径的图类1514. 概率最大的路径1631. 最小体力消耗路径1786. 从第一个节点出发到最后一个节点的受限路径数总结前言Dijkstra 算法是一种

LeetCode 290. 单词规律:同构字符串思路迁移,轻松破解映射难题

在上一篇文章中,我们详细拆解了 LeetCode 205 题「同构字符串」,核心掌握了「双向映射校验」的解题思路——通过维护两个映射关系,确保字符之间的对应唯一、反向唯一,同时优化了时间和空间效率。而今天要讲的 LeetCode 290 题「单词规律」,其实就是「同构字符串」的进阶变式题,解题逻辑完全可以直接迁移&

一文彻底搞清楚数据结构之快速排序和归并排序的深入优化

🔥承渊政道:个人主页 ❄️个人专栏: 《C语言基础语法知识》 《数据结构与算法初阶》 ✨逆境不吐心中苦,顺境不忘来时路! 🎬 博主简介: 前言:前面小编已经介绍八大排序算法的基本思想和实现方法!但关于其中的快速排序和归并排序还有一些细节可以优化!接下来跟着小编来看看快速排序和归并排序的深入优化,学习一下优化完之后,具体在实