Wesley13 Wesley13
4年前
java堆排序(大根堆)
实现堆排序的算法思路是先创建堆,也就是从叶子节点起对每一层的孩子节点及其对应位置的父亲节点进行比较,较大的孩子节点替换较小的父亲节点,一级一级比较替换,就创建出了大根堆,小根堆反之。创建好大根堆以后,我们,将整棵树的根节点与最后最后一个节点替换位置,然后去除最后一个节点,在创建一个新的大根堆,以此类推,完成排序。代码如下:/\\\<p堆排
Aidan075 Aidan075
4年前
分享十张表的数据!大家一起玩!
↑关注置顶 有趣的不像个技术号大家好,我是朱小五经常看我文章的朋友都知道,我一般在文中会分享自己的爬虫脚本或思路。最近有一些朋友留言表示对python不太熟悉,也不太会使用爬虫,但是对文中的数据很感兴趣。问小五能不能分享一下这些数据。当然可以,不过小五要先把涉及的用户信息去掉,再限制一下数据量,仅供大家学习交流,这样就没有法律风
常见五大广告投放问题!从问题背后总结规律!
做电商广告投放,总是广告投放的多,收到的回报少。广告投放的学问是长期学习的过程,需要日积月累累计起来的经验,今天就收集了几个问题,来给大家解答一下,五大关于。1.转化少点击少展现没问题,就是创意排名有问题吧?答:思路没错,点击量少自然转化量也不会提升,而点击量展现量点击率,展现量正常点击量低,主要是点击率的问题,影响点击率问题的环节就是广告创意。做信息流投
Wesley13 Wesley13
4年前
mysql 查询近7天数据,缺失补0
相信很多人的项目都有这种需求,就是查询近7天的记录,但是这7天总有那么几天是没数据的,所以缺失的只能补0 下面的代码不知道能不能看懂,我简单的说一下思路1)先查询红色字体的近7天,再转换成日期2)我的字段使用的是时间戳的方式去保存,只能是先数据库字段先转日期2.1)先查询自己想要的数据,用每天分组,计算好总数后2.2)时间戳字段先转日期
Stella981 Stella981
4年前
JavaScript实现字符串逆置的几种方法
1\.一般来说js实现字符串逆置输出的一般思路是:1、将字符串转为数组,一个字符为数组的一个元素; 2、将数组倒置; 3、再将数组元素拼接为字符串。2\.一般用到的方法有:join():该方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。 split():将一个字符串分割为子字符串数
Stella981 Stella981
4年前
Dubbo和Spring Cloud微服务架构'
微服务架构是互联网很热门的话题,是互联网技术发展的必然结果。它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。虽然微服务架构没有公认的技术标准和规范或者草案,但业界已经有一些很有影响力的开源微服务架构框架提供了微服务的关键思路,例如Dubbo和SpringCloud。各大互联网公司也有自研的微服务框架,但其模式都于这二
Stella981 Stella981
4年前
HTML5 canvas绘制雪花飘落动画(需求分析、知识点、程序编写分布详解)
看到网上很多展示html5雪花飞动的效果,确实非常引人入胜,我相信大家也跟我一样看着心动的同时,也很好奇,想研究下代码如何实现;虽然哦很多地方也能下载这些源码,不过也不知道别人制作此类动画时的思路及难点分析。我这几天刚好学习了一下,也趁着此刻有时间从需求分析、知识点、程序编写一步步给大家解剖下,要是在各位关公面前耍大刀了,可别见笑哟。最终效果图如下:
Wesley13 Wesley13
4年前
MQ(消息队列)常见的应用场景解析
前言提高系统性能首先考虑的是数据库的优化,之前一篇文章《数据库的使用你可能忽略了这些》中有提到过开发中,针对数据库需要注意的事项。但是数据库因为历史原因,横向扩展是一件非常复杂的工程,所有我们一般会尽量把流量都挡在数据库之前。不管是无限的横向扩展服务器,还是纵向阻隔到达数据库的流量,都是这个思路。阻隔直达数据库的流量,缓存组件和消息组件是两大
Stella981 Stella981
4年前
IM系统的MQ消息中间件选型:Kafka还是RabbitMQ?
1、前言在IM这种讲究高并发、高消息吞吐的互联网场景下,MQ消息中间件是个很重要的基础设施,它在IM系统的服务端架构中担当消息中转、消息削峰、消息交换异步化等等角色,当然MQ消息中间件的作用远不止于此,它的价值不仅仅存在于技术上,更重要的是改变了以往同步处理消息的思路(比如进行IM消息历史存储时,传统的信息系统作法可能是收到一条消息就马上同步存
Stella981 Stella981
4年前
MariaDB自动分区维护
最近遇到一个问题,就是如何自动删除6个月之前的旧的分区。就MariaDB而言,并没有类似机制,可以让我们开箱即用,去完成这件事情。所以我们需要换一种思路,或许问题就可以很简单的被解决。我们可以创建一个存储过程和一个事件,然后按照预定的时间表来调用这个存储过程。实际上,我们还可以进一步创建一个存储过程,让该过程自动添加新的分区。在本篇文章中,我们将展示如何