zhangke_EX
码龄3年
关注
提问 私信
  • 博客:21,728
    21,728
    总访问量
  • 71
    原创
  • 193,006
    排名
  • 84
    粉丝
  • 0
    铁粉
  • 学习成就
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:湖南省
  • 加入CSDN时间: 2021-12-11
博客简介:

zhangke_EX的博客

查看详细资料
  • 原力等级
    成就
    当前等级
    4
    当前总分
    670
    当月
    0
个人成就
  • 获得56次点赞
  • 内容获得23次评论
  • 获得75次收藏
创作历程
  • 5篇
    2024年
  • 66篇
    2023年
成就勋章
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

342人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

算法复习|修剪二叉搜索树

总结:这道题还是有一定难度的,自己最初想的暴力方法是先遍历一遍搜索树,得到一个vector容器,再遍历容器,当出现在范围外的点时,使用外置函数将此节点删除,比较麻烦。递归解法:当出现在范围外的节点时,用两个节点各自接住左右两边在范围内的节点再返回这两个节点,从而达到删除当前节点的效果。接着,再用当前层节点root接住返回回来的左右节点,最终达到删除效果,接着返回root节点。
原创
发布博客 2024.04.05 ·
285 阅读 ·
3 点赞 ·
0 评论 ·
0 收藏

C++中const与static用法总结

注:为自己复习用,文末会放出引用参考文章。
原创
发布博客 2024.03.18 ·
907 阅读 ·
9 点赞 ·
0 评论 ·
23 收藏

算法训练|乘积最大数组、最长有效括号

注意:dp[i - 1] + 2 + ((i - dp[i - 1]) >= 2?表示在形如'....))'这种情况下表示,倒数第二个括号如果是一个有效子字符串的一部分,且在这部分有效子字符串的前面有一个'('与倒数第一个')'匹配的话,那么此时的dp[i] = dp[i - 1] + 2,而在这个'(’之前可能符合条件的串,所以也加上dp[i - dp[i - 1] - 2]这一部分。总结:解题思路是需要维护一个最大值以及一个最小值,因为最小值如果是负数的话乘上接下来的一个负数会有可能成为最大的数。
原创
发布博客 2024.02.04 ·
321 阅读 ·
3 点赞 ·
1 评论 ·
0 收藏

算法训练|下一个排列

2、同时我们要让这个「较小数」尽量靠右,而「较大数」尽可能小。当交换完成后,「较大数」右边的数需要按照升序重新排列。这样可以在保证新排列大于原来排列的情况下,使变大的幅度尽可能小。1、我们需要将一个左边的「较小数」与一个右边的「较大数」交换,以能够让当前排列变大,从而得到下一个排列。总结:能读懂题目的意思,但是不知道如何下手。注:以上题解来自力扣官方。
原创
发布博客 2024.01.29 ·
234 阅读 ·
2 点赞 ·
0 评论 ·
1 收藏

算法训练|动态规划之背包问题复习

(2):当放物品i时,此时dp[i][j] = dp[i - 1][j - weight[i]] + weight[i],即放入物品i时,背包容量还剩j - weight[i]且此时就要从0 - i-1下标中找物品放入以及要加上i的价值。其实可以发现如果把dp[i - 1]那一层拷贝到dp[i]上,表达式完全可以是:dp[i][j] = max(dp[i][j], dp[i][j - weight[i]] + value[i]);与其把dp[i - 1]这一层拷贝到dp[i]上,不如只用一个一维数组了,
原创
发布博客 2024.01.26 ·
575 阅读 ·
10 点赞 ·
0 评论 ·
15 收藏

算法训练|实现 Trie (前缀树)

指向子节点的指针数组 children。对于本题而言,数组长度为 26,即小写英文字母的数量。此时 children[0] 对应小写字母 a,children[1]对应小写字母 b,…,children[25]对应小写字母 z。布尔字段 isEnd\textit{isEnd}isEnd,表示该节点是否为字符串的结尾。(解释来源:leetcode官方)。,每个Trie指针都是指向一整个对象包括了vector和一个bool,而不是指向了vector中的某一个对象。
原创
发布博客 2023.12.24 ·
488 阅读 ·
9 点赞 ·
0 评论 ·
9 收藏

算法训练|随机链表的复制、K个一组的翻转链表

题解的思路非常棒,利用哈希表+回溯,因为不知道当前节点的next与random是否已构建,所以使用哈希表来判断;接着当我们构建完当前节点的值之后,利用回溯赋值当前的节点的next与random,最终返回当前节点,形成总体的递归。tail节点就是下k个节点中的头结点,完成当前k个节点的翻转后,pre节点就是当前翻转完后的头节点。总结:此题的关键是利用递归+翻转链表,直接看代码比较容易理解。
原创
发布博客 2023.12.11 ·
395 阅读 ·
9 点赞 ·
0 评论 ·
7 收藏

算法训练|解密数字、珠宝的最高价值

总结:这道题目正确理解题意后其实就是一个走楼梯有多少种方法的题目,只不过需要根据条件来判断f(n)能不能等于f(n - 1) + f(n - 2) 将数字转换为字符串之后,根据题意,若当前字符和前一个字符组成的字符串大于25的话则不能合并成一个字母,则f(n) = f(n - 1),若可以合并成一个字母的话则多了一种情况f(n) = f(n - 2),将这两种情况相加就是可以合并成一个字母的情况。接着初始化dp数组。
原创
发布博客 2023.11.01 ·
148 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

算法训练|数据流中的中位数

总结:这题自己最开始的想法是直接使用vector容器,每次取中位数的时候就进行一次排序,超时。题解很巧妙的利用大根堆和小根堆来解决问题,大根堆和小根堆各存一半的数,其中需要注意的是,小根堆里面存的是较大的数,然后堆顶就是这些数里面最小的数,大根堆里面存的是较小的数,堆顶就是这些数里面最大的数。这样就可以整体形成一个排好序的序列。
原创
发布博客 2023.10.29 ·
149 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

虚幻中的网络概述一

前置:在学习完turbo强大佬的多人fps之后发觉自己在虚幻网络方面还有许多基础知识不太清楚,结合安宁Ken大佬与虚幻官方文档进行补足。补充:官方文档中的描述挺好的,自己只算是搬运和将两者结合加强理解。学习虚幻中的网络先从虚幻网络的架构说起:先放上一张架构总结图。
原创
发布博客 2023.10.27 ·
493 阅读 ·
1 点赞 ·
1 评论 ·
0 收藏

算法训练|交易逆序对的总数、验证二叉搜索树的后序遍历

总结:这道题目难度比较大,整体上来说是利用归并排序的思想,在[并]的过程中加入操作得到目标数,题解部分解析:要注意的地方在于是当左边指针移动的时候我们就需要计算一次交易逆序对,不是右指针移动的时候计算是因为,当我们移动右指针时,说明左边的数比右边的大,右指针移动完成后其中间所跨过的数就是逆序对。总结:此题是利用递归方法来解决问题,容器中最后一个数即为根节点,进行循环寻找到第一个比根节点大的数从此数记为FirstMax开始即为右孩子树,而根据二叉搜索树的性质,在容器中在FirstMax之前的数即为左孩子树。
原创
发布博客 2023.10.26 ·
232 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

图形学中一些基本知识的总结与复习

对自己所学知识的一些总结
原创
发布博客 2023.10.07 ·
774 阅读 ·
2 点赞 ·
2 评论 ·
1 收藏

算法训练第六十五天|螺旋遍历二维数组

总结:本质是模拟一个螺旋的过程,其中关键是如何限制边界条件或者说是循环结束条件。题目要求是按从左到右、从上到下、从右到左、从下到上的顺序,所以可以设置循环来完成,然后对其中的边界进行界定。,在解题方法上也有些许区别,相同点是都是利用循环来完成,不同点是第一种更妙。这两道题目都比较相似,都是模拟一个螺旋的过程,主要区别在于。第二道题的螺旋矩阵一定是一个正方形。
原创
发布博客 2023.09.24 ·
341 阅读 ·
1 点赞 ·
2 评论 ·
1 收藏

算法练习第六十四天

总结:利用一个双端维护队列一个往后递减的队列,对头是最大值,每次进入一个新值时就一直和队尾元素比较将比新的值小的数排出,这样能保证留在队列中的数都是会对最大值产生影响的数,而当主队列中将要排出的数与双端队列对头数相等时则也要将双端队列队头数排出,否则会对主队列中最大的数产生影响。
原创
发布博客 2023.09.23 ·
1766 阅读 ·
2 点赞 ·
0 评论 ·
5 收藏

算法训练第六十三天|被围绕的区域

总结:和第1020道题目很相似,不过自己照着前面那道的题目的思路来并没有解决问题,这和自己没有完全理解题目意思也有一定关系,,边界中如果有为'O'的地方,则利用广搜或者深搜搜索出这一片区域则这一片区域都是不用改变,其余的再根据题意改成'X'即可。,自己利用之前的思路不能做到bug free,看完题解后觉得真妙,并没有设置利用visited数组,而是。直接先从四个边界判断起。
原创
发布博客 2023.09.21 ·
88 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

算法训练第六十二天

总结:还是利用广搜或者深搜,此题的重点是在广搜的同时需要记录下不能离开边界的数量,我的想法是利用一个count和一个bool来记录,如果在广搜的过程中发现有岛的下标在边界上的则bool为真,且将0加入vector中,否则将count累加,直至这一片搜索完成,最后再将vector中的数累加返回,其中容易遗忘的点是需要在将0加入vector之后要将bool设置为假,否则将会导致后面的一片区域都是bool为真而都是0;
原创
发布博客 2023.09.19 ·
78 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

算法训练第六十一天

总结:今日这道题自己使用暴力方法结果是超时了,看完题解后觉得实在是太妙了!利用哈希表与递归(答案中说是回溯,个人理解是递归),利用哈希表记录已经创建了的节点,如果没有找到就直接新创建节点,找到了就直接返回哈希表记录的值,而哈希表的键值就是原来链表中的节点,哈希表中的键值和值值非常对应,就是两个不同链表中的同一节点。
原创
发布博客 2023.09.18 ·
228 阅读 ·
0 点赞 ·
2 评论 ·
2 收藏

算法训练总结

无论无何,这都还是一个新的起点,以后会有各式各样的困难,一定要坚持努力,坚持下去,才会遇见一个更好的自己。整整六十天,基本无间断,中间有想过中断一段时间,但是仍然坚持了下来,也算是给了自己一个交代,坚持的力量是最大的,不是因为看见希望才坚持,而是因为坚持才看见了希望,前路依旧漫长,自己的努力并没有白费,只是仍需努力,仍需努力。从一开始的两数之和到最后的接雨水,中间各个板块都留下了自己的身影,也从中更加相信了自己,并不一定要有别人的监督,最重要的还是要看自己有没有坚持的决心,任何一方面都是。
原创
发布博客 2023.09.12 ·
88 阅读 ·
2 点赞 ·
2 评论 ·
0 收藏

算法训练第五十九天

【代码】算法训练第五十九天。
原创
发布博客 2023.09.12 ·
1645 阅读 ·
3 点赞 ·
0 评论 ·
4 收藏

算法训练第五十八天

总结:今日事单调栈的开端,还是挺巧妙的。
原创
发布博客 2023.09.07 ·
3870 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏
加载更多