自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 收藏
  • 关注

原创 数据结构简介

算法

2021-07-11 03:08:33 390 3

原创 前端三大框架 Vue、React 和 Angular 的市场占比分析

随着前端技术的迅速发展,Vue.js、React 和 Angular 已成为全球最受欢迎的三大前端框架。在国内外,不同的框架在市场中的占比和流行程度存在显著差异。本文将从全球和中国市场的角度,对这三大框架的市场占比进行分析,并探讨各自的优势和适用场景。根据GitHub和Stack Overflow等开发者平台的数据,Vue.js、React 和 Angular 在全球市场的受欢迎程度各有不同。

2024-09-23 16:00:00 6802 2

原创 [Angular] 从零开始使用 Angular CLI 创建 Angular 项目

Node.js 是一个运行 JavaScript 代码的 JavaScript 运行时,它允许我们在服务器端运行 JavaScript 代码。🌐 服务器启动后,打开浏览器并访问 http://localhost:4200,您应该会看到 Angular 的欢迎页面,这意味着项目创建成功,开发环境已正确配置。Angular CLI 是官方提供的命令行工具,帮助开发者快速生成 Angular 项目和各种代码片段。💾 下载适合你操作系统的安装程序,并按照安装向导的提示进行安装。在大多数情况下,你可以接受默认设置

2024-09-23 10:30:00 1219 1

原创 [React] 从零开始使用 Vite 创建 React 项目

Node.js 是一个运行 JavaScript 代码的 JavaScript 运行时,它允许我们在服务器端运行 JavaScript 代码。📦 选择 LTS(长期支持版)或 Current(最新特性版)。对于大多数用户,LTS 版本是更稳定的选择。💾 下载适合你操作系统的安装程序,并按照安装向导的提示进行安装。在大多数情况下,你可以接受默认设置。

2024-09-22 14:00:00 473

原创 [Vue] 从零开始使用 Vite 创建 Vue 项目

Node.js 是一个运行 JavaScript 代码的 JavaScript 运行时,它允许我们在服务器端运行 JavaScript 代码。📦 选择 LTS(长期支持版)或 Current(最新特性版)。对于大多数用户,LTS 版本是更稳定的选择。💾 下载适合你操作系统的安装程序,并按照安装向导的提示进行安装。在大多数情况下,你可以接受默认设置。

2024-09-22 09:00:00 674

原创 现代前端构建工具对比:Vue CLI、Webpack 和 Vite

特性Vue CLIWebpackVite启动速度🐢 较慢🐢 较慢🚀 非常快开发体验👍 良好,内置热更新🤷‍♂️ 灵活但较慢🌟 极快的热更新,开发体验好配置难度🎮 简单,开箱即用🧩 复杂且灵活📘 简单,默认配置即可生态系统🌲 丰富的 Vue 插件🌳 非常成熟🌱 生态系统在快速发展中适合项目类型🏢 Vue 项目,特别是中大型项目🏗️ 任何类型的复杂项目🏡 Vue 和其他现代框架的小型项目。

2024-09-21 17:21:03 984

原创 系统架构设计师 SOA与微服务架构篇

SOA是企业级的集中式架构,适合需要标准化集成和复杂业务流程的场景。微服务是灵活的去中心化架构,适合快速迭代和市场变化的互联网业务。

2024-09-21 01:10:29 2140

原创 微服务架构:概念、起源与实践

微服务架构是一种软件开发方法,它将一个应用程序构建为一系列小型、独立部署的服务,每个服务实现特定的业务功能。这些服务通常围绕业务能力进行构建,并通过定义良好的API进行通信,通常是HTTP RESTful API或轻量级的消息传递系统。微服务架构通过将应用拆分成小而独立的服务,提高了系统的敏捷性和可扩展性。它允许使用不同的技术栈,使得团队能够快速迭代和部署。但同时,它也增加了系统的复杂性,需要有效的协调和管理。

2024-09-19 23:55:01 629

原创 系统架构设计师 云原生架构篇

基础设施即服务(IaaS):提供虚拟化的计算资源,如虚拟机、存储和网络,让用户可以灵活地构建和管理自己的IT基础设施。平台即服务(PaaS):提供开发和部署环境,包括操作系统、数据库和中间件,帮助开发者快速构建、测试和部署应用程序。软件即服务(SaaS):提供基于云的应用软件,用户无需管理底层基础设施,只需直接使用应用,例如邮件服务、CRM系统等。通过云服务,企业可以降低初始投资和运营成本,获得弹性、可扩展性和高可用性,从而更专注于业务创新。市场占有率:约30-40%

2024-09-19 21:31:42 3281

原创 人工智能生成内容(AIGC)对程序员的影响

AIGC技术为程序员带来了前所未有的机遇,通过提升效率、促进创新和扩展知识,程序员可以更快速地开发出高质量的软件产品。然而,这也带来了技能更新、安全风险和伦理考量等挑战。程序员需要不断学习新技术,同时注意保持对AI工具的合理使用,确保技术的健康发展。

2024-09-18 23:26:00 2557 1

原创 系统架构设计师 数据库篇

在数据库系统中,为了保持数据的一致性和完整性,必须对并发事务进行有效的控制。ACID特性是确保事务可靠性的关键,而隔离级别则在并发控制中起到了平衡性能与一致性的作用。正确的索引设计和查询优化可以显著提升数据库的性能,同时,合理的备份与恢复策略是数据安全的重要保障。

2024-09-18 21:13:14 1510

原创 系统架构设计师 大数据架构篇二

Kappa 架构在Lambda的基础上进行了优化,删除了 Batch Layer,将数据通道以消息队列进行替代。因此对于Kappa 架构来说,依旧以流处理为主,数据在数据湖层面进行了存储,当需要进行离线分析或者再次计算的时候,则将数据湖的数据再次经过消息队列重播一次则可。大数据架构的核心在于处理大规模数据集,提供高效率的数据处理和分析能力。Lambda架构和Kappa架构提供了不同的方法来实现这一目标,每种架构都有其优缺点。

2024-09-17 22:30:00 1836

原创 系统架构设计师 大数据架构篇一

Lambda 架构提供了一个能够满足大数据系统关键特性的架构,包括高容错、低延迟、可扩展等。它整合离线计算与实时计算,融合不可变性、读写分离和复杂性隔离等原则,可集成 Hadoop、Kafka、Spark、Storm 等各类大数据组件。大数据架构设计需要考虑的关键点包括处理非结构化数据、应对复杂性和不确定性以及管理数据和决策的异构性。Lambda架构通过其三层设计——批处理层、加速层和服务层——提供了一个强大且灵活的框架,以支持大数据的存储、处理和查询需求。

2024-09-17 18:00:18 1662

原创 系统架构设计师 系统设计篇二

高内聚:模块内部功能紧密联系,提高效率。低耦合:模块之间联系松散,减少依赖。

2024-09-16 12:00:00 849

原创 系统架构设计师 系统设计篇一

高内聚:模块内部功能紧密联系,提升独立性。低耦合:模块间联系松散,减少依赖,提高可维护性。记忆口诀🎓:SD设计,分而治之;模块独立,功能明晰。😄辅助记忆🧠:概要设计:系统的蓝图,模块的骨架。详细设计:模块的血肉,细节的描述。耦合:模块间的桥梁,越少越好。内聚:模块内部的胶水,越紧越好。系统设计像搭积木,高内聚低耦合;独立模块易维护,结构清晰不易乱。

2024-09-16 10:00:00 823

原创 系统架构设计师 需求分析篇一

记忆口诀🎓:SA分析,像剥洋葱,DFD画图,像搭积木,STD状态,像翻日记,DD字典,像查百科。😄辅助记忆🧠:结构化分析SA:分析的大树,层层深入。数据流图DFD:数据的河流,流向清晰。状态转换图STD:状态的时钟,时刻转换。数据字典DD:数据的宝典,一应俱全。

2024-09-15 17:00:00 1630 5

原创 系统架构设计师 需求分析篇二

记忆口诀🎓:用例模型,像编剧写剧本,参与者是演员,用例是台词,关联是舞台指导。🎭辅助记忆🧠:构建用例模型:就像搭建一座城堡,从地基(识别参与者)到塔楼(调整用例模型),每一步都至关重要。用例图的三元素:参与者是城堡的访客,用例是城堡的房间,通信关联则是连接房间的走廊。识别参与者:就像在人群中寻找主角,每个与系统互动的都是故事的关键。合并需求获得用例:将需求像珍珠一样串联起来,形成一条美丽的项链。调整用例模型:用例模型的园艺,修剪掉多余的枝叶,让结构更加清晰。

2024-09-15 13:28:32 1407 2

原创 动态规划 - 740. 删除并获得点数(C#和C实现)

假设我们要偷一排房屋,每间房屋都有一定的金额。如果我们只能偷一间房屋,那么我们当然要偷金额最高的房屋。如果我们可以偷多间房屋,那么我们可以选择偷金额最高的两间房屋,或者偷金额最高的三间房屋,以此类推。你是一个专业的小偷,计划偷窃沿街的房屋。每间房屋都存放着一定金额的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你不触动警报装置的情况下,一夜之内能够偷窃到的最高金额。

2023-12-19 09:15:00 500

原创 动态规划 - 198. 打家劫舍(C#和C实现)

假设我们要偷一排房屋,每间房屋都有一定的金额。如果我们只能偷一间房屋,那么我们当然要偷金额最高的房屋。如果我们可以偷多间房屋,那么我们可以选择偷金额最高的两间房屋,或者偷金额最高的三间房屋,以此类推。你是一个专业的小偷,计划偷窃沿街的房屋。每间房屋都存放着一定金额的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你不触动警报装置的情况下,一夜之内能够偷窃到的最高金额。

2023-12-19 09:00:00 695

原创 动态规划 - 746. 使用最小花费爬楼梯(C#和C实现)

每当你爬上一个阶梯你都要花费对应的体力花费值,然后你可以选择继续爬一个阶梯或者跳过这个阶梯。请你找出达到楼层顶部的最低花费。个阶梯对应着一个非负数的体力花费值。数组的每个下标作为一个阶梯,第。在开始时,你可以选择从索引为。(下标从 0 开始)。的元素作为初始阶梯。

2023-12-18 09:30:00 812

原创 动态规划 - 1137.第N个泰波那契数(C#和C实现)

【代码】1137.第N个泰波那契数。

2023-12-18 09:00:00 526

原创 动态规划 - 509.斐波那契数(C#和C实现)

斐波那契数,通常用 F(n) 表示,形成的序列称为斐波那契数列。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。给定 N,计算 F(N)。

2023-12-17 14:00:00 680

原创 动态规划 - 70.爬楼梯(C#和C实现)

每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?需要 n 阶你才能到达楼顶。给定 n 是一个正整数。

2023-12-17 10:00:00 639

原创 字符串 - 151.翻转字符串里的单词(C#和C实现)

考虑类比:假设你有一篇文章,你希望将其中的每个单词逐个翻转。你可以通过先将整个文章逐字符翻转,然后再对每个单词逐字符翻转,最终得到逐个翻转单词的结果。给定一个字符串,逐个翻转字符串中的每个单词。

2023-12-16 10:00:00 502

原创 字符串 - 541.反转字符串II(C#和C实现)

考虑类比:假设你有一条领带,你希望每隔一段距离将其中的一部分领带反转。你可以通过遍历字符串,按照规定的间隔(2k)对每一部分进行反转。给定一个字符串 s 和一个整数 k,你需要对从字符串开头算起的每隔 2k 个字符的前 k 个字符进行反转。

2023-12-16 09:00:00 480

原创 字符串 - 344.反转字符串(C#和C实现)

考虑类比:假设你有一串珠子,你希望将其颠倒过来。你可以使用两个指针,一个指向字符串的开头,另一个指向字符串的末尾,然后交换它们指向的字符。不要使用额外的数组空间,必须在原地修改输入数组、使用 O(1) 额外空间解决这一问题。编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组。你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。

2023-12-15 09:30:00 434

原创 字符串、字典 - 1.两数之和(C#和C实现)

考虑类比:假设你在一家商店,每件商品都有一个价格,现在你有一个目标金额,需要找到两件商品的价格之和等于目标金额。你可以通过记录每件商品的价格和对应的索引,然后查找是否存在另一件商品的价格与目标金额减去当前商品的价格相等。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。,请你在该数组中找出和为目标值的那两个整数,并返回它们的数组下标。

2023-12-15 09:00:00 543

原创 哈希表 - 350. 两个数组的交集 II(C#和C实现)

使用哈希表统计一个数组中每个元素的出现次数,然后遍历另一个数组,找到与哈希表中相同元素,将其添加到结果集中。给定两个数组,编写一个函数来计算它们的交集。

2023-12-14 09:15:00 356

原创 哈希表 - 349. 两个数组的交集(C#和C实现)

使用哈希表统计一个数组中每个元素的出现次数,然后遍历另一个数组,找到与哈希表中相同元素,将其添加到结果集中。给定两个数组,编写一个函数来计算它们的交集。

2023-12-14 09:00:00 543

原创 数组 - 383. 赎金信(C#和C实现)

给定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串ransom能不能由第二个字符串magazines里面的字符构成。如果可以构成,返回 true;否则返回 false。赎金信字符串中的字符只包含小写字母。杂志字符串中的字符只包含小写字母。使用数组or哈希表统计每个字符的出现次数。

2023-12-13 09:15:00 488

原创 数组 - 242. 有效的字母异位词(C#和C实现)

给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。使用数组or哈希表来统计每个字符的出现次数。你可以假设字符串只包含小写字母。

2023-12-13 09:00:00 609

原创 链表 - 142. 环形链表 II(C#和C实现)

给定一个链表,返回链表开始入环的第一个节点。如果链表无环,则返回。使用快慢指针,先判断链表是否有环,然后找到环的入口。你是否可以不用额外空间解决此题?

2023-12-11 22:31:35 636

原创 链表 - 141. 环形链表 I(C#和C实现)

给定一个链表,判断链表中是否有环。你能否不使用额外空间解决此题?使用快慢指针,判断链表是否有环。

2023-12-11 22:29:56 846

原创 链表 - 160. 相交链表(C#和C实现)

编写一个程序,找到两个单链表相交的起始节点。

2023-12-10 20:00:54 407

原创 链表 - 19. 删除链表的倒数第N个节点(C#和C实现)

给定一个链表,删除链表的倒数第。个节点,并且返回链表的头结点。使用双指针的方法来找到倒数第。个节点,然后删除该节点。

2023-12-10 19:59:23 449

原创 链表 - 24. 两两交换链表中的节点(C#和C实现)

给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。使用迭代或递归的方式来实现两两交换链表中的节点。

2023-12-10 14:23:27 985 2

原创 链表 - 206. 反转链表(C#和C实现)

使用迭代或递归的方式来反转链表。

2023-12-10 14:15:17 729

原创 链表 - 203. 移除链表元素(C#和C实现)

若是则删除该节点。需要注意的是,删除节点时需要更新前一个节点的。使用迭代或递归的方式遍历链表,检查每个节点的值是否等于目标值。删除链表中等于给定值。

2023-12-09 17:35:47 728

原创 数组 - 209.长度最小的子数组(C#和C实现)

使用滑动窗口的思想解决该问题。定义两个指针,分别表示滑动窗口的左右边界,通过移动右边界来扩展窗口,移动左边界来缩小窗口。在移动的过程中,实时更新滑动窗口内的元素和,并记录最小子数组的长度。给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的子数组。如果不存在符合条件的子数组,返回 0。

2023-12-09 01:43:40 469

原创 数组 - 977. 有序数组的平方(C#和C实现)

由于数组已经按照升序排列,我们可以利用双指针的方法,分别从数组的两端开始遍历,比较平方后的值大小,然后将较大的平方值放入结果数组的末尾。这样可以保证结果数组是按照升序排列的。,返回每个数字的平方组成的新数组,要求也按照升序排列。给定一个按照升序排列的整数数组。

2023-12-07 22:06:38 433

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除