首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
江不知
掘友等级
服务端研发 | 微信公众号
|
编程拯救世界
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
125
文章 102
沸点 23
赞
125
返回
|
搜索文章
最新
热门
图解精选 TOP 面试题 004 | LeetCode 108. 将有序数组转换为二叉搜索树
将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。 本题中,一个高度平衡二叉树是指一个二叉树每个节点的左右两个子树的高度差的绝对值不超过 1。 题目给出了一个升序排序的有序数组,要求我们转换为一棵高度平衡二叉搜索树。 在此之前,我们先来回忆一下什么是二叉搜索树。 基于…
搞定面试算法系列 | 贪心算法与正确性归纳证明
贪心算法就是让计算机模拟一个「贪心的人」来做出决策。这个贪心的人是目光短浅的,他每次总是: 并且他一旦做出了选择,就没有办法反悔(不可回溯),所以为了利益最大化,他需要保证绝不能做出错误的选择。 贪心算法不是从整体最优的角度上考虑问题,而是只在意某种意义上的局部最优解。因此,贪…
面向对象困境之:横切关注点
关注点是指基于功能划分系统的一部分。 这样说好像还是特别抽象?那我们举个例子。 日志功能就是横切关注点的一个典型案例。日志功能往往横跨系统中的每个业务模块,即“横切”所有需要日志功能的类和方法体。所以我们说日志成为了横切整个系统对象结构的关注点 —— 也就叫做横切关注点啦。 对…
🐳图解精选 TOP 面试题 003 | LeetCode 344. 反转字符串
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。 不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。 你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。 由于题目要求空间复…
聊聊 Go 语言中的面向对象编程
我们知道,在 Go 语言中没有类(Class)的概念,但这并不意味着 Go 语言不支持面向对象编程,毕竟面向对象只是一种编程思想。 我们一起来看看 Go 语言是如何在没有类(Class)的情况下实现这三大特征的。 在 Go 语言中可以使用结构体(Structs)对属性进行封装,…
🐳图解精选 TOP 面试题 002 | LeetCode 104. 二叉树的最大深度
给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明:叶子节点是指没有子节点的节点。 返回它的最大深度 3 。 因其左右子树深度尚不可知,我们需要对其一一求解。 它的左子节点 15 与右子节点 7 的情况与上述节点 4 相同,左右子节…
🐳图解精选 TOP 面试题 001 | LeetCode 237. 删除链表中的节点
请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。 解释: 给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9. 解释: 给定你链表中值为 1 的第三个节点,那么在调用了你的函数之后,该链表…
深入浅出:举个🌰解读原码、反码和补码
在 Go 语言中,int8 代表有符号 8 位整数。你觉得输出结果是什么呢?我们在文末再公布答案,在此之前,我们先来回顾一下有符号整数是什么。 一个数在计算机中的二进制表示称为机器数,这个机器数是带符号的。它的最高位是符号位,0 代表正数,1 代表负数。 以 8 位有符号整数为…
图解双指针 | LeetCode 27. 移除元素
原题链接:LeetCode 27. 移除元素 给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 元素的顺序可以改变。你不需要…
认识 Go 语言中的数组
在 Go 语言中,数组的声明方式为 var identifier [len]type。 声明时没有指定数组的初始化值,因此所有的元素都会被自动初始化为默认值 0。 new 返回类型的指针,因此 a1 与 a2 的区别在于:a1 的类型为 [5]int,a2 的类型为 *[5]i…
下一页
个人成就
文章被点赞
542
文章被阅读
160,339
掘力值
3,386
关注了
70
关注者
264
收藏集
28
关注标签
45
加入于
2018-04-25