首页
学习
活动
专区
工具
TVP
发布

光城(guangcity)

专栏作者
475
文章
430817
阅读量
47
订阅数
C++那些事之emplace
问题2: 现在有一个map<string, int>,假设让你针对某个key进行插入,不存在设置0,存在更新(+1)操作,您会如何实现?
公众号guangcity
2023-02-28
3150
Python2升级Python3改造手法
Python 3.x做了部分修改,但大体语法与Python 2.x相似,Python 3.x的使用者可以轻松阅读Python 2.x编写的代码。
公众号guangcity
2022-12-02
3890
jsoniter与原生json对比
之前看到过json-iterator库使用,为何替换掉原生的json呢,看了一下github,如下:
公众号guangcity
2022-03-29
8630
【深入浅出leveldb】 比较器
代码位置【include/leveldb/comparator.h】【util/comparator.cc】
公众号guangcity
2021-07-09
7280
【LeetCode每日一题】190. 颠倒二进制位
今日题目190题,相关题目7、9两道题,一起带进来刷,每日一题微信交流群可以点击右下角:合作转载->联系我,拉你入群。
公众号guangcity
2021-03-30
6320
【LeetCode每日一题】173. 二叉搜索树迭代器
实现一个二叉搜索树迭代器类BSTIterator ,表示一个按中序遍历二叉搜索树(BST)的迭代器:BSTIterator(TreeNode root) 初始化 BSTIterator 类的一个对象。BST 的根节点 root 会作为构造函数的一部分给出。指针应初始化为一个不存在于 BST 中的数字,且该数字小于 BST 中的任何元素。boolean hasNext() 如果向指针右侧遍历存在数字,则返回 true ;否则返回 false 。int next()将指针向右移动,然后返回指针处的数字。注意,指针初始化为一个不存在于 BST 中的数字,所以对 next() 的首次调用将返回 BST 中的最小元素。
公众号guangcity
2021-03-30
5320
快速拿下面试算法
在面试前一周,我刷了很多道算法,分类刷,有些是做过的,因为我是面试C++相关岗位,除了leetcode与剑指offer相关的算法,还需要手撕一些智能指针呀,单例模式呀、字符串呀、LRU、排序算法等等。
公众号guangcity
2020-10-10
5310
Go那些事之HelloWorld结构
本节主要阐述一个HelloWorld例子与C/C++、JAVA的不同之处,并加深学习理解。
公众号guangcity
2020-03-11
2920
现代C++之字面量、静态断言和成员函数说明符
字面量(literal)是指在源代码中写出的固定常量,它们在 C++98 里只能是原生类型,如:
公众号guangcity
2019-12-29
1.8K0
内存管理之堆、栈、RAII
最近在极客时间上看到吴老师的《现代C++实战30讲》,觉得很是不错,于是学习一下,本文中的一些文字概念引用自这里。同时,对于这个课的代码我放在了我的《C++那些事》仓库里面,点击阅读原文,或者下面链接,即可获取。欢迎star!
公众号guangcity
2019-12-16
1K0
​C++ STL源码剖析之unordered_xxx
前面学到了hashtable,而这节是hashtable的容器适配器:unordered_map。
公众号guangcity
2019-10-31
1.7K0
C++ STL源码剖析之哈希表
哈希表,是作为unordered_map与undered_set等的底层容器,自gcc2.9后源码量大增!
公众号guangcity
2019-10-31
1.6K0
STL之set与multiset那些事
set/multiset以rb_tree为底层结构,因此有元素自动排序特性。排序的依据是key,而set/multiset元素的value和key合二为一:value就是key。
公众号guangcity
2019-10-23
3930
再也不用担心STL的红黑树了。。。
STL中Red-black tree(红黑树)class,用来当做SLT关系式容器(如set,multiset,map, multimap).里面所用的insertion和deletion方法以 《Introduction to Algorithms》一书为基础,但是有以下两点不同:
公众号guangcity
2019-10-23
1.9K0
发布一个STL源码剖析专栏及序列式容器deque
大家好,我是光城,最近一直在研究STL源码剖析,据此,开一个知乎专栏:《C++ STL 源码剖析》,地址戳下面或点击阅读原文,欢迎大家关注!
公众号guangcity
2019-10-20
8580
C++ STL源码剖析 tr1与std array
C++ tr1全称Technical Report 1,是针对C++标准库的第一次扩展。即将到来的下一个版本的C++标准c++0x会包括它,以及一些语言本身的扩充。tr1包括大家期待已久的smart pointer,正则表达式以及其他一些支持范型编程的内容。草案阶段,新增的类和模板的名字空间是std::tr1。
公众号guangcity
2019-10-15
1.1K0
STL 源码剖析之动态数组 vector
vector 的数据安排以及操作方式,与 array 非常相似。两者的唯一差别在于空间的运用的灵活性,array 是静态的,一旦配置了就不能改变,而 vector 是动态空间,随着元素的加入,它的内部机制会自行扩充空间以容纳新元素。下面一起来看一下 vector 的"内部机制",怎么来实现空间配置策略的。
公众号guangcity
2019-10-15
1.5K0
​C++ STL源码剖析之知其然,知其所以然,源码面前了无秘密!
本节使用上节Traits特性,研究iterator源码,来实现一个简单的iterator_category,同时对iterator的源码结构进行分析。
公众号guangcity
2019-10-14
1.3K0
C++ STL源码剖析之Traits编程技法
在 STL 编程中,容器和算法是独立设计的,即数据结构和算法是独立设计的,连接容器和算法的桥梁就是迭代器了,迭代器使其独立设计成为可能。如下图所示:
公众号guangcity
2019-10-12
1.2K0
C++ STL源码剖析之双向环形链表list
双向环状链表从节点值为3开始插入,红色框表示最后一个节点(end()指向的节点)。黄色线条表示指向前驱节点,黑色线条表示指向后继节点。
公众号guangcity
2019-10-09
1.4K0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档