华为机试华为机试
华为考试必须了解的:
机考时长2-2.5小时,3道题
可以使用IDE编辑器
ACM输入输出
OD考试三道题分数:100 + 100 + 200 分。
一般150分就算通过。分数越高,对定级越又帮助。
实习生机考、应届本硕秋招机考、留学生机考、博士机考:2h, 3个题目,总分600,150分合格。
分数计算: 通过率 * 题目分数
由于分数计算,所以有时候一定不要放弃做题。
注意事项:
防止被判定为作弊,要避免代码与别人的重复。
如果是刷到过的,建议抽离函数出来。
机考重点:
算法复习
如何复习算法????
复习算法前提要掌握一定的数据结构(欸嘿
字符串 类
链表 类
数组 类
队列 queue
栈 stack
哈希 map
图(
树
堆
掌握常见算法:
DFS 深搜
BFS 广搜
排序
二分
迭代
递归
回溯
分治
贪心
双指针
并查集: 可以用于判断是否成环
机考题目【华为上机考试】华为机考,看这一篇就够了,适用于编程算法岗位 - 知乎 (zhihu.com)
45. 跳跃游戏 II
给定一个长度为 n 的 0 索引整数数组 n ...
华为面经
主要用于面试准备环节。有些忘记标明出处了。
华为通用软件面经一面 1h自我介绍
问编程竞赛经历 (要回忆获奖比赛中的题目)
问实习遇到的问题(挤出3个)
循环队列判满判空方法
两个指针,头和尾,head,tail 如果 (head+1)%len = tail 表示满了。
dfs和bfs流程和各自应用场景
dfs:深度优先搜索
bfs:广度优先搜索
应用场景:dfs一般用于搜索有所答案。bfs的话一般用于搜索最短的路径答案。当然2者都可以使用。
括号匹配手撕20. 有效的括号
func isValid(s string) bool { n := len(s) if n <= 1 { return false } str := []byte{'(', ')', '{', '}', '[', ']'} stack := make([]byt ...
abbrlink: ‘0’
重构博客1.Hexo的安装
注意:默认你安装了node,git,并且你有一个自己的Github账号呀。没有的话自行搜索安装一下。
更多详情可以参考官网Hexo
安装hexo的脚手架hexo-cli
npm install hexo-cli -g
创建一个hexo博客
hexo init# 安装一下git提交插件npm install hexo-deployer-git --save
此时你可以本地启动查看一下
hexo generatehexo server
默认的效果如下
2.选取主题anzhiyu可以参官方的教程 https://github.com/anzhiyu-c/hexo-theme-anzhiyu
安装butterfly主题
在刚才的目录安装主题:
git clone -b main https://github.com/anzhiyu-c/hexo-theme-anzhiyu.git themes/anzhiyu
应用主题
在Hexo的更目录下_config.yml,把主题修改一下butterfly
theme: ...
Kubernetes, also known as K8s, is an open source system for managing containerized applications across multiple hosts. It provides basic mechanisms for the deployment, maintenance, and scaling of applications.
KubernetesKubernets基础Kubernetes 协调一个高可用计算机集群,每个计算机作为独立单元互相连接工作。 Kubernetes 中的抽象允许你将容器化的应用部署到集群,而无需将它们绑定到某个特定的独立计算机。 为了使用这种新的部署模型,应用需要以将应用与单个主机分离的方式打包:它们需要被容器化。 与过去的那种应用直接以包的方式深度与主机集成的部署模型相比,容器化应用更灵活、更可用。 Kubernetes 以更高效的方式跨集群自动分发和调度应用容器。 Kubernetes 是一个开源平台,并且可应用于生产环境。
一个 Kubernetes 集群包 ...
云原生Docker学习Docker是什么?
即将开发和运维合并,将原来100%能跑通的源码配置和版本打包成镜像文件(类似于虚拟机vm使用iso镜像文件,虽然是假的,但是和真的一模一样),此时用一种软件docker引擎原封不动的打包过来,实现跨平台之间无缝接轨。
docker之所以能够快速发展,因为他给出了一个标准化的解决方案–系统平滑移植,容器虚拟化技术。
Docker用于什么?快速,一致性的交付你的软件。
Docker通过允许开发人员使用提供您的应用程序和服务的本地容器在标准化环境中工作,从而简化了开发生命周期。容器非常适合进行持续集成和持续交付(CI / CD)工作流。
考虑以下示例方案:
您的开发人员在本地编写代码,并使用Docker容器与同事共享他们的工作。
他们使用Docker将其应用程序推送到测试环境中,并执行自动和手动测试。
当开发人员发现错误时,他们可以在开发环境中对其进行修复,然后将其重新部署到测试环境中以进行测试和验证。
测试完成后,将修补程序推送给生产环境就像将更新的映像推送到生产环境一样简单。
响应式部署和扩展,在相同的硬件上运行更多的工作负载。 ...
少年应有鸿鹄志,当骑骏马塌平川!
3月学习记录2024-3-7今日打卡
leetcode练习
64. 最小路径和
62. 不同路径
5. 最长回文子串
70. 爬楼梯
118. 杨辉三角
198. 打家劫舍
279. 完全平方数
322. 零钱兑换
背面试题
Redis相关
Redis的集群模式:主从,哨兵,cluster三种。
Redis使用惰性删除+定期删除策略配合使用来对过期的key进行删除
Redis的持久化:aof日志(以追加的方式写入,主要记录的是操作),rdb(对所有键值对的记录),混合模式(aof和rdb两种模式的混合使用)
缓存雪崩:
大量数据同时过期
均匀设计过期时间
互斥锁
双key策略
后台更新缓存,定时更新,消息队列通知更新。
Redis故障宕机
服务熔断
请求限流
构建Redis高可用集群。
缓存击穿:
频繁访问的热点数据过期:
互斥锁
不给热点数据设置过期时间,由后台定期更新缓存
缓存穿透:
访问的数据既不再缓存也不在数据库
非法请求的限制。
缓存空值或默认值。
使用布隆过滤器快速判断数据是否存在。
Redis的数据结构 ...
记录自己的面试过程!!!
3月6号,腾讯一面(寄)1.使用过分布式锁吗?怎么实现的?goredisson
redis的set nx
2.分布式锁的使用场景对共享资源的保护。
3.介绍一下子redis集群主从,哨兵,切片集群
4.redis集群的模式
主从
哨兵
切片
5.说一下缓存雪崩缓存雪崩的话,有几种情况:
缓存的key在同一时间同时失效
Redis宕机
6.缓存击穿和缓存穿透有什么区别缓存击穿一般是针对于热点key问题,是指,热点key过期的时候,会有大量的并发请求,一瞬间打到MySQL服务器,导致MySQL宕机
缓存击穿是指,某些非法数据,不存在于数据库中,频繁的访问,不经过缓存,直接打到数据库,且数据库也没有数据,无法被缓存。
7.说一下go语言中的Contextcontext就是上下文的意思。主要记录当前goroutine的上下文,一般用于goroutine之间传递信息,类似于map的key,value存储。
emptyCtx
todoCtx
valueCtx
cancleCtx
8.问了一下项目。项目背景。项目难点。你是怎么做的。具体过程。9.三个题目
第一 ...
这里我想了解Redis的一些基础的类型的具体实现,所有尝试阅读Redis的源码,从源码中学习这些类型的实现。
Strings
JSON
Lists
Sets
Hashes
Sorted sets
Streams
Geospatial
Bitmaps
Bitfields
Probabilistic
Time series
Redis is a data structure server. At its core, Redis provides a collection of native data types that help you solve a wide variety of problems, from caching to queuing to event processing. Below is a short description of each data type, with links to broader overviews and command references.
Redis是一个数据结构服务器。Redis的核心是提供了一组本地数据类型,可以帮 ...