数据结构
吾有一术,名曰快排.
最近刷leet-code的一到题目时,找到第k大的数字,需要对一个数组进行排序. 发现自己只会最基础的冒泡排序,插入排序.
然后就去补习了一下插入排序,对着网上给的动态图,写了一份自己的快速排序,代码都差不多.
Copy
// 1. 选择一个基准数量(可选第一个…
排序算法-桶排序
桶排序很适用于有 0~100 个数,然后打乱顺序,重新分配。不过如果给定的数据范围差距很大,桶排序的算法效率变低. 步骤
申请 n 个桶,根据需求
遍历一个给定的数组,找到最大值和最小值
遍历数组,假设遍历的值为num, 按照公式floor((num - min) / n)即可…
Dijkstra(迪杰斯特拉算法)
假设有如下一个图 Copy
// 3
// e+-----------------+
// ^…
DFS(深度优先算法)和BFS(广度优先算法)
BFS全称:Breadth-First-Search DFS全称:Depth-first search
在LeetCode有一题岛屿的数量题目
给定一个由 1(陆地)和 0(水)组成的的二维网格,计算岛屿的数量。一个岛被水包围…
反转链表-递归的思想
最近在LeetCode做题目,遇到一个反转链表的题目. Copy
反转一个单链表。
示例:
输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL
Copy
/**
* Definition for singly…
[数据结构]链表的实现在PHP中
开始对数据结构的学习 今天写代码换了一个字体,以前一直用console很好看,今天发现一个更喜欢的风格Source Code Pro
上两张图,还是挺好看的!!!
步入正题,讲讲链表的操作
节点
首先得有一个节点类,用于存储数据
Copy
<?php…