自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 自带天气APP太臃肿?手写一个换掉它(2)

虽然本意是想打造一个轻量,简约的天气APP,但是现在的感觉太单调了,尤其是实时天气那里。嗯,看着简单了许多。接下来就是设置背景色了,背景需要根据不同天气显示不同颜色,我加了一个枚举类,里面设置了大致的几种天气场景和颜色,只要在查询天气的时候根据天气情况去找到对应的场景枚举返回给页面显示就行了,还有把状态栏和导航栏的颜色换掉,和背景色一致,让整体更加沉浸,查阅资料,harmonyos提供了这样的API可以直接用,不过状态栏和导航栏的前景色API6就不能设置了,得API8才行,状态栏和导航栏的前景色就先放着。

2024-04-26 08:08:29 667 1

原创 算法绘本-桶排序

桶排序一般用于元素分布比较均匀的情况,如果元素分布十分不均匀,或者范围比较大,则可能不太适合桶排序桶排序的空间复杂度和时间复杂度和桶的数量,使用的排序算法有关,应用中要根据实际情况选择。

2024-04-21 21:00:00 516

原创 算法绘本-快速排序

快速排序的最优时间复杂度和平均时间复杂度都是O(nlogn),最坏时间复杂度是O(n^2)快速排序的最优空间复杂度是O(logn),最坏空间复杂度O(n)

2024-04-18 21:00:00 1823

原创 算法绘本-归并排序

在拆分的时候,需要将组对半拆分,拆分成logn层,归并的时候每层的运算量为n,所以归并排序的时间复杂度为O(nlogn)因为归并排序的时候最大需要n的空间,所以归并排序的空间复杂度为O(n)

2024-04-16 08:30:00 285

原创 算法绘本-希尔排序

因为希尔排序时步长的选择不同,排序的时间不同,所以希尔排序的时间复杂度和步长算法有关希尔排序和插入排序一样,只需要一个额外的空间用于交换元素位置,所以空间复杂度为O(1)希尔排序是不稳定的,因为相同的元素可能会分配到不同的组排序,导致排序后的顺序和原来的顺序不一样。

2024-04-10 21:16:57 544

原创 算法绘本-插入排序

插入排序有点像打麻将时给麻将牌排序,其原理是假定一个有序区和一个无序区,一开始将给定的一系列值的第一个放到有序区,剩下的值放到无序区,然后从无序区取出第一个值,从后向前和有序区的值比较,找到它应该存在的位置(大于等于左边,小于右边)插入进去。第一轮,取出无序区的第一个数字1,和有序区的数字比较,有序区现在只有一个数字6,所以用1和6比较。首先,假定一个有序区和一个无序区,将上面的数字中的第一个放到有序区,其余的放到无序区。因为数字4小于数字6,所以继续往前遍历有序区,用数字4和有序区倒数第三个数字1比较。

2024-04-08 07:55:32 409

原创 算法绘本-选择排序

选择排序的最坏的时间复杂度为O(N^2),空间复杂度为O(1)选择排序是不稳定的,在排序的过程中,有可能改变原有的相同值的顺序。

2024-04-03 16:00:00 988

原创 算法绘本-冒泡排序

冒泡排序是一种简单的排序方式,其原理是两两比较,将较大的值放右边,较小的值放左边,经过多轮的比较,最终将给定的值排好顺序。

2024-04-01 21:00:05 411

原创 自带天气APP太臃肿?手写一个换掉它

天气APP是我们平时比较常用的一个APP,用来关注近期天气情况,给我们的出行安排提供便利。现在的手机一般都是自带有天气APP的,我的Mate20也有华为官方的天气。一开始的时候用着还挺好的,不知从何时起,华为的天气APP在启动的时候会显示广告,虽然看着很烦,但是还勉强能接受。后来,这个天气APP变本加厉,打开后里面到处都是广告,而且越来越臃肿,占用空间达到了211MB,一个天气应用真的需要占用这么大的空间吗,我决定自己动手写一个天气APP试试。

2024-03-30 21:00:00 2148 1

原创 我是如何把个人网站首屏加载时间从18秒优化到5秒的

可以看到前面提到的两个文件比较大,后面列出了每个文件使用gz压缩后的大小,但是浏览器实际并没有加载压缩后的文件,而是原始文件。再打开打包文件夹,发现实际生成的js文件夹中除了js文件,还有js.map文件,js.map文件通常用于开发环境调试用,方便我们查找错误,在生成环境是不需要用到的,而且都比较大,这也是一个优化的点。起因是这样的,自己做了一个网站,开发的时候好好的,部署到服务器上去后,打开的时候白屏了好长时间才展示内容, 这可不能忍,必须找出原因优化掉!页面加载耗时基本没变,但是请求数减少到51次。

2024-03-29 09:00:00 1845

原创 为了表白,我手写了一场烟花

首先是发射的烟花,就是从地面升起到爆炸这一阶段的烟花,这个类只是重写了update函数,让它快速往上跑,当要爆炸的时候,就是往烟花数组里插入很多个烟花(爆炸散射出来的烟花),然后销毁自己。第二种烟花是图片烟花,图片烟花关键就是先把图片画到画布上,然后用getImageData把图片的像素信息提取出来生成烟花即可,因为图片的像素比较高,如果都取出来生成烟花会很影响性能,所以这里的图片大小是调整过的,比较小,烟花在屏幕上也没有那么大,所以用大图片没必要。出差延迟了,我宝可以和我一起回老家了,线上烟花用不上了。

2024-03-28 21:00:00 236

原创 我的程序员修炼之路

大家好,我是爱宝的程序员,一个土木工程专业半路出道的大龄程序员。我的第一篇文章,想和大家分享一下我是如何一步步成为一名程序员的。

2024-03-27 21:40:15 1107

空空如也

空空如也

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

TA关注的人

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