2019年6月8日

十大经典排序算法

摘要: 排序算法可以分为内部排序和外部排序。 常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。 各种排序算法的时间和空间复杂度: 关于时间复杂度: 线性对数阶 (O(nlog2n)) 排序 快速排序、堆排序和归并排序; O(n1+§)) 排序,§ 是介于 阅读全文

posted @ 2019-06-08 20:34 longlively 阅读(155) 评论(0) 推荐(0) 编辑

2018年9月20日

C++的split()函数

摘要: 最近写算法题经常用到字符的split()函数,这里整理一下。部分代码摘自网上。 1. 函数体如下: 2. 使用案例: 3.分割结果: 1 hello world c++ 阅读全文

posted @ 2018-09-20 22:20 longlively 阅读(2765) 评论(0) 推荐(0) 编辑

2018年7月10日

C++多态意义探究

摘要: 原理简介: 多态成立的三个条件: 之前有看过一个例子: 总感觉这边可以就在编译的时候确定绑定是哪一个函数,没有必要等到运行时在确定,然后就在思考多态的意义。 后来发现如果代码变成这样时: HowToPlay()函数中,传来子类时,执行子类的print函数,传来父类时执行父类的print函数。 于是C 阅读全文

posted @ 2018-07-10 15:22 longlively 阅读(169) 评论(0) 推荐(0) 编辑

2018年6月11日

3min快速使用Hexo+GitHub搭建免费博客

摘要: 准备工作 至于为什么使用Hexo,而不使用Jekyll,网上已经做了一些比较,这里就不在赘述。 由于是免费博客,本篇文章暂不涉及域名申请。 在开始之前,已有的资源包括: 环境检测 输入以下命令有返回版本号,说明Node.js环境配置正确: 安装Hexo 首先在D盘符下建立hexo文件夹,配置完成后博 阅读全文

posted @ 2018-06-11 01:32 longlively 阅读(186) 评论(0) 推荐(0) 编辑

2018年6月4日

常用开源协议说明

摘要: 开源协议 开源软件如何选择一个协议 下图是协议选择的流程图: 下图是另一个版本: 1. BSD BSD开源协议是一个给于使用者很大自由的协议。基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。 但"为所欲为”的前提当你发布使用了BSD协议的代码 阅读全文

posted @ 2018-06-04 20:59 longlively 阅读(219) 评论(0) 推荐(0) 编辑

2018年5月20日

NoSQL入门和概述

摘要: 入门概述 1互联网时代背景下,为什么用NoSQL 1单机MySQL的美好年代 在90年代,一个网站的访问量一般都不大,用单个数据库完全可以轻松应付。 在那个时候,更多的都是静态网页,动态交互类型的网站不多。 上述架构下,我们来看看数据存储的瓶颈是什么?1.数据量的总大小一个机器放不下时2.数据的索引 阅读全文

posted @ 2018-05-20 17:11 longlively 阅读(205) 评论(0) 推荐(0) 编辑

2018年5月18日

ucore OS简介

摘要: 操作系统的基本原理与简单实现 --基于ucore OS + RISC-V 30240243X 操作系统 早期开放开源的UNIX操作系统和MIT教授 Frans Kaashoek 等基于UNIX v6设计的xv6操作系统给了我们启发,但x86相对封闭&复杂和有一定历史包袱的CPU硬件接口给OS学习带来 阅读全文

posted @ 2018-05-18 23:43 longlively 阅读(3466) 评论(0) 推荐(0) 编辑

ucore lab1实验笔记

摘要: 实验目的: 操作系统是一个软件,也需要通过某种机制加载并运行它。在这里我们将通过另外一个更加简单的软件-bootloader来完成这些工作。为此,我们需要完成一个能够切换到x86的保护模式并显示字符的bootloader,为启动操作系统ucore做准备。lab1提供了一个非常小的bootloader 阅读全文

posted @ 2018-05-18 22:32 longlively 阅读(780) 评论(0) 推荐(1) 编辑

2018年5月17日

最大子序列和问题

摘要: 问题描述:给定一整数序列A1, A2,... ,An (可能有负数),求A1~An的一个子序列Ai~Aj,使得Ai到Aj的和最大。 分治法: 思路:最大子序列和可能出现在三个地方:整个出现在输入数据的左半部分,整个出现在输入数据的右半部分,或者跨越输入数据的中部从而占据左右两个半部分。 代码: 动态 阅读全文

posted @ 2018-05-17 20:49 longlively 阅读(140) 评论(0) 推荐(0) 编辑

2018年5月13日

ubuntu下安装nginx依赖库

摘要: 首先使用dpkg命令查看自己需要的软件是否安装: 查看软件是否安装: 解决依赖包pcre安装,命令: 解决依赖包zlib安装,命令: 解决依赖包openssl安装,命令: 阅读全文

posted @ 2018-05-13 00:40 longlively 阅读(247) 评论(0) 推荐(0) 编辑

导航