自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 资源 (3)
  • 收藏
  • 关注

原创 《STL源码剖析》问题总结

个人笔记,持续更新,如果有遇到相同的疑问希望可以帮助大家。AllocatorP45T* tmp = (T*)(::operator new((size_t)(size * sizeof(T))));调用系统全局operator new函数来申请一个内存空间,传入参数为size_t类型,使用了一个强制类型转换,函数返回void类型指针,再使用强制类型转换为T,赋给tmp指针,指向申请的内存空间。https://www.cnblogs.com/raichen/p/5808766.htmlC++ n

2021-11-21 14:48:46 594

原创 OpenJudge F:Pots

每次操作分为6种情况,可以利用队列进行BFS搜索,同时进行剪枝和记录,避免振荡和没必要的操作。#include <cstdio>#include <queue>#include <cmath>#include <vector>#include <iostream>using namespace std;struct Op { int a, b; int step; int way; int id,last_id; Op(i

2021-07-03 21:15:46 133

原创 字典树(前缀树)

二维数组实现字典树 比较方便#include <iostream>#include <string>using namespace std;bool tri[100000][26] = { false };void Insert(string& str) { int n = str.length(); for (int i = 0; i < n; i++) { auto idx = str[i] - 'a'; tri[i][idx] = tr

2021-06-30 18:49:38 91

原创 KMP算法

#include <vector>#include <iostream>#include <string>using namespace std;void getNext(string& pattern, vector<int>& next) { int n = pattern.length(); next.resize(n); next[0] = -1; int j = -1; for (int i = 1; i &lt

2021-06-30 17:52:53 90

原创 大整数运算

大整数运算代码,没有经过细致的测试,欢迎指正。#include <cstdlib>#include <string>#include <vector>#include <iostream>#include <cmath>using namespace std;class bign{public: vector<int> num; int len; bool flag; bign()

2021-04-18 18:57:37 137 2

原创 C++实现哈希查询

#define success 1#define unsuccess 0#define MAXSIZE 10#define INI 10000int m = 0;//表长class HashTable {public: int count;//表中元素个数 int* elem;//元素数组 bool InitHashTable(HashTable* H); int Hash(int key); bool Insert(HashTable* H, int key); bool S

2021-02-22 13:21:17 138

原创 C++实现二叉排序树

尽管C++的STL模板中有set、multiset等关联容器能够起到二叉排序树的作用,但是动手写一写二叉排序树能够提升写代码的能力,并且能够加深对二叉排序树思想的理解。typedef int etype;class BiTree {public: BiTree* lchild, *rchild; etype data; void DeleteNode(BiTree* T,etype key); bool SearchNode(BiTree* T, BiTree* f, etype key,

2021-02-21 20:21:56 283

原创 数据结构之栈的C++代码实现

一般的数据结构书中的栈和队列的实现都是用C语言的代码作为指导,C++则相对较少,所以在学习的过程中我尝试用C++写了一下,如果有错误希望大家能够指出。#include <iostream>#include <stdlib.h>typedef int ElemType;const int MAXSIZE = 100;class SqStack {public: SqStack(); ~SqStack(); void InitStack(SqStack* S); vo

2021-01-30 20:40:52 250

原创 除自身以外数组的乘积

给你一个长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。来源:力扣(LeetCode)提示:题目数据保证数组之中任意元素的全部前缀元素和后缀(甚至是整个数组)的乘积都在 32 位整数范围内。说明: 请不要使用除法,且在 O(n) 时间复杂度内完成此题。进阶:你可以在常数空间复杂度内完成这个题目吗?( 出于对空间复杂度分析的目的,输出数组不被视为额外空间。)不考虑时间复杂度

2020-06-04 19:02:57 114

原创 求和1+2+......+n

求 1+2+…+n ,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。来源:LeetCode这一题看上去比较简单,但实际上的思考方法还是比较有趣的,因为题目中限制了乘除法的使用,那么等差数列的求和公式是不可以使用的,其次限制了一系列关键字的使用,那么循环求和以及逻辑判断也受到了影响,那么我们应该考虑的就是使用递归。int sumNums(int n){ int nums=n; nums&&(nums+=

2020-06-02 11:40:29 1349

原创 拥有最多糖果的孩子

给你一个数组 candies 和一个整数 extraCandies ,其中 candies[i] 代表第 i 个孩子拥有的糖果数目。对每一个孩子,检查是否存在一种方案,将额外的 extraCandies 个糖果分配给孩子们之后,此孩子有 最多 的糖果。注意,允许有多个孩子同时拥有 最多 的糖果数目。来源:力扣(LeetCode)这是一个很普通的数组遍历问题,先找出数组中最大的数,然后循环遍历每一个数,并与剩余糖果数相加,判断相加后是否为数组中最大的数。//该部分可直接在所给的模板代码中编写 为了阅读

2020-06-01 19:35:59 206

原创 Java中的List集合

List 代表一个元素有序、且可重复的集合,集合中的每个元素都有其对应的顺序索引,并且List允许使用重复元素,可以通过索引来访问指定位置的集合元素,默认按元素的添加顺序设置元素的索引。List 集合中也存在一些根据索引来操作集合元素的方法。ArrayList 和 Vector 均是List接口的典型实现,区别在于:①Vector是一个古老的集合,通常建议使用 ArrayList②Arra...

2020-03-13 11:59:28 447

原创 Java中的Set集合

Set接口是Java中一个用来存放对象容器,是一个无序、不可重复的集合,存放于java.util包中HashSet 是 Set 接口的典型实现,大多数时候使用 Set 集合时都使用这个实现类。我们大多数时候说的set集合指的都是HashSetHashSet 按照 Hash 算法来存储集合中的元素,因此具有很好的存取和查找性能HashSet 具有以下特点:①不能保证元素的排列顺序②不可重复...

2020-03-12 23:00:08 349

原创 适合初学者的python练习2

练习python中读取文件比较常用的库pandaspandas是python用来统计、分析数据的基石,尤其是针对表格数据,掌握好pandas库对数据分析、建模有很大的促进作用,特别需要熟练掌握Series和DateFrome工具任务:重点测试PANDAS的用法,文件中num字段是中国文化对他们的影响力,开头是to的字段则是这些国家的某些属性,编程实现下列功能:1输出num比较大的国家名(大于...

2020-03-10 23:11:06 235 1

原创 适合初学者的python练习1

操作1:用基础知识,把下面一段话写到一个文件中,然后读取该文件,用split将其分解,然后写入字典或者列表,然后判断哪个城市大于平均数。操作2:将分析结果数据写入一个csv文件中,文件包含城市名,病人数字段;同时新加一个字段,如果病人数>500就写严重;否则就写不严重。要求用函数。文字:武汉市41152例、孝感市3279例、黄冈市2831例、荆州市1501例、鄂州市1274例、随州市12...

2020-03-02 21:20:03 336

yolov3-spp.weights

来自官网的yolov3-spp权重文件 分享给大家 可以快速下载 避免下载等待时间过长

2020-05-15

判断一个数是否为素数

C++中一个比较简单的代码 用来判断一个数是否为素数 也可以用C语言的代码来写 逻辑上没有什么很大的区别 主要是循环的合理使用 以及算法的清晰表示

2019-05-01

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除