数据结构开发(15):递归的思想与应用

0.目录 1.递归的思想 2.递归的应用 2.1 单向链表的转置 2.2 单向排序链表的合并 2.3 汉诺塔问题 2.4 全排列问题 2.5 逆序打印单链表中的偶数结点 2.6 八皇后问题 3.小结 1.递归的思想 递归是一种数学上分而自治的思想: 将原问题分解为规模较小的问题进行处理 分解后的问题与原问题的类型完全相同,但规模较小 通过小规模问题的解,能够轻易求得原问题的解 问题的分解是有限的 ( 递归不能无限进行 ) 当边界条件不满足时,分解问题 ( 递归继续进行 ) 当边界条件满足时,直
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

2 检索数据

2.1 SELECT语句 从一个或多个表中检索信息。 2.2 检索单个列 SELECT prod_name FROM Products; 上述语句利用SELECT从Products表中检索一个名为prod_name的列。所需的列名写在SELECT关键字之后。 2.3 检索多个列 想从一个表中检索多个列,必须在SELECT关键字之后给出多个列名,列名之间用逗号隔开。 SELECT prod_id, prod_name, prod_price FROM Products; 2.4 检索所有列 在实
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

kali linux 更新问题

1、使用一次更新和升级软件替换 apt-get install && apt -y full -upgrade 之后使用 reboot重启 系统,重启之后 再次使用命令 apt -y install open -vm -tools -desktop fuse 之后使用 reboot , 2、在设备虚拟机的文件夹共享的时候,即便是你将vmtools成功的安装到了客户机,后面发现文件夹还是不能共享的,使用脚本对 共享的文件夹进行挂载到系统 说明文件共享的挂载的脚本代码 ,前面的vmtools的安装
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

mongodb数据库高可用部署

                mongodb数据库高可用部署                                          作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.架构介绍 二.安装部署
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

20.使用指令-ln history

ln:软链接,类似于windows里面的快捷方式 ln -s 源文件 软链接名:给源文件创建一个软链接(快捷方式) history:查看已经执行过的历史命令,也可以执行历史命令 history 10:显示最近10条。不加数字的话全部显示
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

栈-初识

栈和队列 栈和队列是比数组更加抽象的结构,本人理解是为了特殊场景下建立秩序的一个工具,表示抽象的一个过程,数组更像一个结果。 栈 先进后出 栈空间(存放元素位置),栈顶元素(指向栈顶的指针),栈的长度 创建一个空栈 initStack(); // 初始化栈 入栈 push(Element); 出栈 pop(); 查看元素 peek(); Java代码实现 // stack public class NewStack { private Long[] elements; // 元素
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

画出决策边界线--plot_2d_separator.py源代码【来自python机器学习基础教程】

1 import numpy as np 2 import matplotlib.pyplot as plt 3 from .plot_helpers import cm2, cm3, discrete_scatter 4 5 def _call_classifier_chunked(classifier_pred_or_decide, X): 6 # The chunk_size is used to chunk the large arrays to wor
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

es6之更优雅的条件语句

在使用JavaScript时,条件判断是经常会用到的,一些简单的判断条件还可以接受,当遇到比较复杂多重条件时就比较恶心了。这里使用es6的小技巧使判断更优雅。 1、使用 Arrary.includes 处理多重条件(返回布尔值 true 或 false) 比如: function test(fruit) { if (fruit == "apple" || fruit == "orange") { console.log("red"); } else { console
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

谈谈你对本次2018级ACM新手赛的体会

第一次参加这类比赛,挺有趣的,在现场磨了四个小时也没有全写出来,收获还是挺大的,至少意识到自己是能做到这些的(笑 今后也会多多努力
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

各大数据库之间的简单区别

转自 https://blog.csdn.net/yuxiangaaaaa/article/details/71642218 首先这句话有点道理:教学用sqlserver,自己玩用mysql,想玩高端大气就db2,想花钱买放心家省心就用oracle! 在学校里学习的是sqlserver,然后自己学习开发的时候,用的是mysql,操作简单,安装简单,部署一个简单项目很适用,然后工作的时候用的都是DB2和Oracle了,当然我的项目设计到的都是银行金融行业的。 性能对比 平台: Mysql、ora
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

掌握git基本功

前言 最近想把代码传到GitHub上,结果我发现的demo的npm全是本地安装,上穿到GitHub要死要死,几百M,然后我就搜了下怎么不上传node_modules弄了半天也没成功,于是准备静下心学一下git,也当一个笔记日后好翻阅. 研究前我的只会5个命令 $ git init $ git add . $ git commit -m "提交的xxxxx" $ git pull $ git push 复制代码 Git是什么 Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

忘记root密码

进入emergency mode模式更改root密码 重启,按向下按键,让系统停留在开机页面 选中第一行,按字母:e 进入界面,移动光标,找到如图的一行 将 ro 改成 rw init=/sysroot/bin/bash 按ctrl + x,进入emergency模式 修改root密码 切换到原始系统:chroot /sysroot/(chroot命令切换系统,/sysroot/目录为原始系统,也就是我们的centos7) passwd命令修改root密码,输入两遍密码即可 上面的方块,本身是
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

顺序栈的栈基本操作(C语言版)

  由于现在只学了C语言所以就写这个C语言版的栈的基本操作 这里说一下 :网上和书上都有这种写法 int InitStack(SqStack &p) &p是取地址 但是这种用法好像C并不支持 ,C++才支持,所以用 C语言写就需要使用指针 代码如下: 1 #include <stdio.h> 2 #include <stdlib.h> 3 #define STACK_INIT_SIZE 100//储存空间初始分配量 4 #define STACKINCREMENT 10//存
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

用redis当作LRU缓存

原文地址:https://redis.io/topics/lru-cache Redis可以用来作缓存,他可以很方便的淘汰(删除)旧数据添加新数据,类似memcached。LRU只是其中的一种置换算法,这篇文章介绍了maxmemory配置命令和LRU算法的一些深入讨论,这里的LRU只是一种近似LRU(并不是严格的把最老的数据淘汰,而是使用随机采样的方式)。从4.0开始Redis引入了一种新的淘汰算法LFU(Least Frequently Used)。 maxmemory配置命令 maxmem
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

Django中使用缓存

一:缓存介绍 在动态网站中,用户所有的请求,服务器都会去数据库中进行相应的增,删,查,改,渲染模板,执行业务逻辑,最后生成用户看到的页面. 缓存是将一些常用的数据保存内存或者memcache中,在一定的时间内有人来访问这些数据时,则不再去执行数据库及渲染等操作,而是直接从内存或memcache的缓存中去取得数据,然后返回给用户. 当一个网站的用户访问量很大的时候,每一次的的后台操作,都会消耗很多的服务端资源,所以必须使用缓存来减轻后端服务器的压力. 二:Django中的六种缓存方式 开发调试缓
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

ThinkPHP无法打开或点击不了Trace的问题

首先先确认是否打开了Trace配置项,ThinkPHP3.*为'SHOW_PAGE_TRACE'=>true,ThinkPHP5.*为'app_trace'=>true. 如果已经确认开启了Trace,可能是由于输出了"<pre>"标签的原因,导致Trace的CSS样式和JavaScript重写,不能显示或点击. 解决办法就是删除"<pre>"标签的格式化输出,如果想清晰的显示数据可以右键查看源代码. 无法显示或点击的Trace样式: 正常情况下的Trace样式: 可以看出一个没有加粗显示,一
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

flowable资料

flowable-modeler画流程图:https://www.youtube.com/watch?v=0pqD50pySJg 这个视频跳过创建用户那一步了:https://www.youtube.com/watch?v=G5V_OvbJpw8
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

git 常用命令,上传,下载,更新线上代码

git 常用命令以及推荐git新建上传个人博客 $ git clone //本地如果无远程代码,先做这步,不然就忽略 $ git status //查看本地自己修改了多少文件 $ git add . //添加远程不存在的git文件 $ git commit -m "更新说明" //提交修改 $ git pull //提交代码前先更新线上代码 $ git push //更新提交到到远程服务器上 $ git checkout master //进入master主分支,也可以拉去进入其他分支 $ g
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

ASP.NET MVC 简单分页代码

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using SportsStore.WebUI.Models; using System.Text; namespace SportsStore.WebUI.HtmlHelpers { /// <summary> /// 分页辅助器 /// </summary
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0

本征向量、本征值、正定矩阵的定性理解

下面所有的黑色字体的字母都是矩阵 本征向量和本征值的定义: 对于一个非零向量x和一个矩阵A,如果标量a使得:         Ax=ax 则可以称a为A的本征值,x为本征向量。 本征值和本征向量的求法:   Ax-ax=0 (1)   (A-aI)x=0 (2)   则只要A-aI的行列式为零,就可以求出a的值;然后将a的值代入上面的(2)的式子,就可以求出本征向量里面的元素的关系 本征值在几何上的意义:会将对应本征向量方向上的向量进行缩放,既可以说:缩放的倍数就是本征值 正定矩阵的定义: 对
分类: 其他 发布时间: 12-19 23:53 阅读次数: 0