冒泡排序python实现 去年写过一篇冒泡排序python实现,外层多了一层循环,这里更正过来~ 算法思想 冒泡排序(以从小到大排序为例)的思想在于,不断地将当前元素与后一个元素进行比较,如果当前元素较小,则调换当前元素与后一个元素的位置,否则保持不变;假设需要排序的元素一共有 n n n个,在 i i i轮排序过程中,从第一个元素开始,跟后续的 ( n − i ) (n-i) (n−i)元素进行上述比较(注意:上一轮排序得到的结果不需要拿到下一轮作比较)。最终的排序结果中,开头的元素是最小值,结尾的元素是最大值。…

2020年4月30日 0条评论 7点热度 阅读全文

判断一颗树是否为完全二叉树 算法思想: 完全二叉树规则: 遍历到任何一个节点,有右孩子没有左孩子直接返回false 不违反1的情况下,当前节点左右两个孩子不全,从当前节点开始所有的节点均为叶子节点。 我们定义一个队列层序遍历二叉树,定义一个bool类型的变量,表示是否到达一个节点,这个节点的左右孩子不全,那么以后的节点就全为叶子节点。若不满足,则不是完全二叉树。 也就类似于下图: 代码实现: bool isCBTree(Node* head) { if(head == nullptr) return true; q…

2020年4月30日 0条评论 27点热度 阅读全文

微服务架构需要考虑的问题 首先搞清楚,集群是个物理形态,分布式是个工作方式, 分布式是指将不同的业务分布在不同的地方。分布式是以缩短单个任务的执行时间来提升效率的,而集群则是通过提高单位时间内执行的任务数来提升效率。 微服务是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成 当然分布式肯定属于微服务。 微服务的设计是为了不因为某个模块的升级和BUG影响现有的系统业务。微服务与分布式的细微差别是,微服务的应用不一定是分散在多个服务器上,他也可以是同一个服务器。 分布式和微服的架构很相似,只是部署的方式不一样而…

2020年4月30日 0条评论 9点热度 阅读全文

安装及简单使用mysql数据库及其可视化管理工具navicat;安装及简单使用redis数据库及其可视化管理工具RedisDesktopManager!!! (mysql安装包又添加一个,解决安装Mysql后没有my.ini文件,还有一些杂七杂八的各种报错问题!!!) 百度网盘: 链接:https://pan.baidu.com/s/1VwNkuQs2NxSQ7xeVErutJQ 提取码:e3lw

2020年4月30日 0条评论 25点热度 阅读全文

很简单! 直接 import 导入要查看的库,然后 help() 就可以了。 >>> import PyHook3 >>> help(PyHook3) help(PyHook3),查看库的用法。 help(PyHook3.HookManager()),可以查看具体方法的源码。 dir(PyHook3),用来查看库的属性。 >>> dir(PyHook3) ['GetKeyState', 'HookConstants', 'HookEvent', 'HookMan…

2020年4月30日 0条评论 5点热度 阅读全文

文件存储   共享配置信息存储     数据库     查 更新 删 关闭数据库连接   调试数据库 Stetho(科学上网) 增加依赖     Sqlite(不用科学上网)   如何在不同activity上操作同一个数据库s   注意:! 样例老师的程序在: 我的程序代码在 sqlite数据库增删改查: https://blog.csdn.net/w0100746363/article/details/827072…

2020年4月30日 0条评论 6点热度 阅读全文

环境:VMWare+Centos7 在安装前一定要先配置镜像加速器,我采用的是阿里云镜像加速器,否则下载速度会很慢 安装Mysql pull一个Mysql镜像 docker pull mysql:5.7 启动并配置端口 名称 文件映射(为了方便修改mysql的配置,不用进入mysql,可以直接在外面进行配置) 密码等等 -v /mydata/mysql/log:/var/log/mysql \ -v /mydata/mysql/data:/var/lib/mysql \ -v /mydata/mysql/conf:…

2020年4月30日 0条评论 22点热度 阅读全文

主要使用: 1、单片机STM32F407 2、树莓派3B+ 3、OpenMV4摄像头 4、L298N四路电机驱动模块 5、OLED屏幕 总IO口接线: 各部分功能: STM32: 作为主控,完成的功能为: 1、控制小车运动:通过STM32输出PWM波给驱动模块进行小车运动状态的控制。 2、与OpenMV4串口通信:实现与OpenMV4的串口收发字符类型数据功能。 3、与树莓派串口通信:实现与树莓派的串口收发字符类型数据功能。 4、OLED屏的显示:让OLED屏能显示表示当前状态的字符。 OpenMV4: 主要完成循…

2020年4月30日 0条评论 7点热度 阅读全文

Java面试总结(2021优化版)已发布在个人微信公众号【技术人成长之路】,优化版首先修正了读者反馈的部分答案存在的错误,同时根据最新面试总结,删除了低频问题,添加了一些常见面试题,对文章进行了精简优化,欢迎大家关注! 【技术人成长之路】,助力技术人成长!更多精彩文章第一时间在公众号发布哦! 文章目录 架构设计 请列举出在JDK中几个常用的设计模式? 什么是设计模式?你是否在你的代码里面使用过任何设计模式? 静态代理、JDK动态代理以及CGLIB动态代理 静态代理 动态代理 cglib代理 单例模式 工厂模式 观察…

2020年4月30日 0条评论 7点热度 阅读全文

线程跟人类一样拥有自己的生命周期,一条线程从创建到执行完毕的过程即是线程的生命周期,此过程可能在不同时刻处于不同的状态,线程状态正是这小节的主题,线程到底有多少种状态?不同状态之间是如何转化的? 对于线程的状态的分类并没有严格的规定,只要能正确表示状态即可,如图2-5-7-1,先看其中一种状态分类,一个线程从创建到死亡可能会经历若干个状态,但在任意一个时间点线程只能处于其中一种状态,总共包含五个状态:新建(new)、可运行(runnable)、运行(running)、非可运行(not runnable)、死亡(de…

2020年4月30日 0条评论 4点热度 阅读全文