华为对象云存储OBS开发记录 Posted on 2022-08-24 In Works 对象存储是一种存储结构,它将数据作为对象进行管理,而不是文件或块,每个对象包括数据、元数据和唯一标识符。 在软件开发中,对象存储通常用于存储非结构化数据,如图片、视频、日志文件等。 使用对象存储,可以通过RESTful API从任何地方访问数据,这使得对象存储非常适合用于构建云原生应用,或者需要大规模数据存储和访问的应用。 国内外许多云服务提供商,都提供对象存储服务: 国内 阿里云OSS 腾讯云COS 华为云OBS 百度云BOS 国外 Amazon S3(Simple Storage Service) Google Cloud Storage Microsoft Azure Blob Storage IBM Cloud Object Storage 本文基于OBS Java API,从头开始实现了一个最简单的分段上传大文件的功能。 Read more »
OTA差分升级技术 Posted on 2022-08-23 In Works OTA差分升级,主要是解决整车OTA升级中升级包更新推送不必全量推送的问题。 差分算法用于减小升级包体积,从而缩短下载时间、节省网络带宽、减少用户流量使用。 本文主要介绍几种差分算法,并实践应用一种常见的差分算法。 Read more »
C++ 设计模式学习路线 Posted on 2022-07-21 In C++ 设计模式是针对常见问题的通用解决方案,目前最为经典的设计模式有 23 种。 学习设计模式不仅能开拓思路、写出更优质的代码、提高项目的开发和维护效率;还能更好地阅读和理解源码,甚至可以根据文件名称直接推断出源码的架构设计。 Read more »
字节跳动2022春招研发笔试第六场4.10-算法方向 Posted on 2022-04-10 In Review 涨潮淹没岛屿考察深度优先搜索(DFS)在二维网格上的应用,主要目标是找到二维网格中的岛屿(由1组成的连通区域),并将与边界相连的岛屿“淹没”(将1变为0) 网球装箱、网球装箱主要考察排序(Sorting)和线性扫描(Linear Scan)相关知识点以及对一维、二维数组的基本读取和操作。 集齐卡牌用了贪心算法(Greedy Algorithm)和哈希表(Hash Table)的数据结构知识点来解决问题,每次都选择覆盖剩余最多元素的商品,直到所有元素都被覆盖。 Read more »
华为2022校园招聘软件专业类4.08-机试题三道 Posted on 2022-04-08 In Review 第一题考察模拟:涉及到对实际问题或过程的计算机算法模拟。 第二题是DFS在二维网格上的应用:岛屿的最大面积、连通区域的最大面积等经典题目的变体,主要考察对DFS算法和二维网格操作的理解。 第三题是一维动态规划:DP中经典问题跳跃游戏的一个变种,考察DP的基本知识点。 Read more »