• 2024-09-28在 commit 里使用 emoji~
    在gitcommit上使用emoji提供了一种简单的方法:仅通过查看所使用的emoji来确定提交的目的或意图,非常好理解,阅读体验很棒。‍效果以我的博客项目为例,可以看到不少的emoji:‍‍使用方法直接在提交信息里写入表情符号的代码即可,例如:$gitcommit-m":art:测试emoj
  • 2024-09-26编写更好的 React 代码:干净、高效的实践指南
    随着react的不断发展,开发人员必须不断更新最佳实践,以增强代码的可读性、可维护性和性能。本指南概述了2024年编写更清洁、更高效的react应用程序时要遵循的关键实践,包括react19中引入的最新更改。1.使用功能组件和钩子带有钩子的功能组件是构建react应用程序的标
  • 2024-09-19react hooks--useCallback
    概述useCallback缓存的是一个函数,主要用于性能优化!!!基本用法如何进行性能的优化呢?useCallback会返回一个函数的memoized(记忆的)值;在依赖不变的情况下,多次定义的时候,返回的值是相同的;语法:constmemoizedCallback=useCallback(()=>{doSomething(a,b);
  • 2024-09-14[Vue] v-once、v-memo 和 key 优化组件性能
    前言key、v-once和v-memo都是Vue提供的用于优化性能的工具,主要目的是减少不必要的渲染和更新操作,从而提升应用的性能。key相关的就不用多说了,[Vue]v-forkey用index会出现什么问题。v-once这个很简单,仅渲染元素和组件一次,并跳过之后的更新。在随后的重新渲染,元素/组
  • 2024-08-13(算法)最⻓递增⼦序列————<暴搜->记忆化搜索->动态规划>
    1.题⽬链接:300.最⻓递增⼦序列2.题⽬描述:3.解法(暴搜->记忆化搜索->动态规划):算法思路:暴搜:a.递归含义:给dfs⼀个使命,给他⼀个数i,返回以i位置为起点的最⻓递增⼦序列的⻓度;b.函数体:遍历i后⾯的所有位置,看看谁能加到i这个元素的后⾯。统计所有情况下的最⼤值。
  • 2024-08-11【算法/学习】:记忆化搜索
    ✨                         落魄谷中寒风吹,春秋蝉鸣少年归    
  • 2024-08-09React性能之--如何避免组件重复渲染?
         在react中,我们会发现存在组件会重复渲染,虽然说如果项目不大的话,这点影响不大,但是我们还是尽量避免组件渲染比较好,养成好习惯,尽可能让不管是大小项目,都让性能尽可能优化。那我们如何避免组件重复渲染呢?  一、在React中,可以通过以下几种方法来避免组件重复
  • 2024-07-27Python面试宝典第19题:最小路径和
    题目        给定一个包含非负整数的mxn网格grid,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。        示例1:输入:grid=[[1,3,1],[1,5,1],[4,2,1]]输出:7解释:因为路径1→3→1→1→1的总
  • 2024-07-21动态规划2:计算最大连续子序列和
    importjava.util.HashMap;importjava.util.Map;publicclassDynamicProgramming2{publicstaticvoidmain(String[]args){int[]arr={3,-4,2,-1,2,6,-5,4};//暴力枚举法System.out.println(getMaxSumSubArr(arr));//加
  • 2024-07-09Media Analysis Memo
    Assignment5:MediaAnalysisMemo(18points)Inthisassignment,youareaskedtoconductascanofrelevantmedia,analyzethemediacoverage,andprovideasummaryofthisanalysisinordertoassesshowitmayimpactaclient’scampaign.Forthisassi
  • 2024-06-21Python 学习 第三册 第13章 动态规划
    ----用教授的方式学习目录13.1 又见斐波那契数列13.2 动态规划与 0/1 背包问题13.3 动态规划与分治算法13.1 又见斐波那契数列一个很直观的斐波那契数列的递归实现:deffib(n):    """假设n是非负整数返回第n个斐波那契数"""    ifn==0o
  • 2024-05-28React中何时使用memo、useCallback、useMemo以及useRef进行性能优化
    react无法做到像vue一样自动收集依赖更新(期待react19的ReactCompiler),需要开发人员手动的进行性能优化,此时memo、useCallback、useMemo、useRef就是性能优化中的重要API本文虽然介绍可应用场景,但是正常开发中,尤其是useCallback。除非遇到性能问题或者组件库封装,亦或
  • 2024-05-27算法导论,矩阵链乘法(动态规划)
    直入主题,5.27学的矩阵链相乘(动态规划)题目理解:        1.原题                要求:对A1,A2,A3......An进行矩阵的乘法(线性代数的基础知识),求通过添加括号,以达到的最小乘法次数    2.题目理解        乘法:由于矩阵乘法的结合
  • 2024-05-23Leedcode-斐波那契数
    自己写的,递归classSolution:deffib(self,n:int)->int:#如果n是0,则返回0,因为这是Fibonacci数列的定义ifn==0:return0#如果n是1,则返回1,因为这是Fibonacci数列的定义elifn==1:retu
  • 2024-05-07LeetCode 2060. Check if an Original String Exists Given Two Encoded Strings
    原题链接在这里:https://leetcode.com/problems/check-if-an-original-string-exists-given-two-encoded-strings/description/题目:Anoriginalstring,consistingoflowercaseEnglishletters,canbeencodedbythefollowingsteps:Arbitrarily split itintoa sequ
  • 2024-04-101039. 多边形三角剖分的最低得分
    题目链接:实现一、记忆化搜索classSolution{public:intminScoreTriangulation(vector<int>&values){intn=values.size();intmemo[n][n];memset(memo,-1,sizeofmemo);//-1表示还没有计算过function<int(int,int)>df
  • 2024-04-09198. 打家劫舍
    题目链接:本题考察动态规划。实现一、递推\(f[i]\)表示考虑下标从\(0\simi\)的房屋最多能抢劫到的金额。思考状态转移时考虑第\(i\)个房屋抢或不抢。由于不能抢劫相邻的房屋,若抢了第\(i\)个房屋,则第\(i-1\)个房屋就不能抢,再抢只能从\(i-2\)开始考虑,即\(\rmf[i-
  • 2024-04-08第十四届蓝桥杯省赛研究生组python
    目录试题A:工作时长excel处理代码试题B:分糖果试题C:填充试题D:互质数的个数题解:暴力试题E:阶乘的和题解:暴力+备忘录试题F:公因数匹配题解:暴力试题G:小蓝的旅行计划题解试题A:工作时长excel处理把数据复制到excel,并选中列右键选择设置单元格格式注意:因为求和之后总小时数可能会超过2
  • 2024-04-07编辑距离
    题目链接https://leetcode.cn/problems/edit-distance/description/题目大意题目代码【记忆化搜索】classSolution{public:intminDistance(stringword1,stringword2){intn=word1.size(),m=word2.size();vector<vector<int>>memo(n,vecto
  • 2024-04-05数位DP
    CF204A题目链接https://codeforces.com/problemset/problem/204/A题目大意模板讲解数位DP模板#include<bits/stdc++.h>#definelllonglongusingnamespacestd;intn,m,t;lll,r;strings;llmemo[20][10][10];lldfs(inti,intfirst,intlast,boolis_limi
  • 2024-04-04信息学奥赛一本通题目解析:1204:爬楼梯(记忆化递归)
    【题目描述】树老师爬楼梯,他可以每次走1级或者2级,输入楼梯的级数,求不同的走法数。例如:楼梯一共有3级,他可以每次都走一级,或者第一次走一级,第二次走两级,也可以第一次走两级,第二次走一级,一共3种方法。【输入】输入包含若干行,每行包含一个正整数N,代表楼梯级数,1≤N≤30。【
  • 2024-03-22【React 】如何提高组件的渲染效率?在React中如何避免不必要的render?
    1.是什么react基于虚拟DOM和高效Diff算法的完美配合,实现了对DOM最小粒度的更新,大多数情况下,React对DOM的渲染效率足以我们的业务日常复杂业务场景下,性能问题依然会困扰我们。此时需要采取一些措施来提升运行性能,避免不必要的渲染则是业务中常见的优化手段之一2.如何做
  • 2024-03-15【LeetCode 2312】卖木头块
    题目描述原题链接:2312卖木头块解题思路每次切割只能完全横切或者竖切,即切成更矮或者更窄的木块;每次切割后剩余的两部分木块都是更小规模的同类问题,典型的可以用动态规划求解的问题;具体到单个问题,高x宽y的木块能卖的最多钱数有三种情况:prices数组中正好有对应宽高的价格
  • 2024-03-08python-memo-3
    x_1+x_2+x_3+x_4=8的正整数解(>0):从7个空隙中添加3个挡板->C(M,N),M=7,N=3m=int(input('m='))n=int(input('n='))fm=1fornuminrange(1,m+1):fm*=numfn=1fornuminrange(1,n+1):fn*=numfm_n=1fornuminrange(1,
  • 2024-02-28python-memo-2
    ·换句话说连续的代码如果又保持了相同的缩进那么它们属于同一个代码块,相当于是一个执行的整体。缩进可以使用任意数量的空格,但通常使用4个空格,建议大家不要使用制表键或者设置你的代码编辑工具自动将制表键变成4个空格。·“Flatisbetterthannested.”,之所以提倡代码“扁平