栈跟队列的区别:栈:先进后出,限定只能在表的一端进行插入和删除(表尾),栈只能从头部取出数据,也就是最先放入的需要遍历整个栈最后才能取出,而且遍历时还得为数据开辟临时空间。队列:先进先出,只能在表的一端进行插入,并且在表的一端进行删除,遍历数据速度不同,而且可以从头或者尾部开始遍历,但不能同时遍历,无需开辟临时空间,因为遍历过程中不影响数据结构。相同点:1、都是线性结构。2、插入操作都是在表尾进行
分类:
其他好文 时间:
2018-08-09 01:19:22
阅读次数:
169
求自然数幂和,就是一条公式,然后用代码实现; 公式描述如下: 可以看出只要我们预处理出每一项,就可以在线性时间内求得自然数的幂和。前面的倒数可以用递推法求逆元 预处理,组合数也可以预处理,也可以先预处理,现在关键是如何预处理伯努利数。 伯努利数满足条件,且有 那么继续得到 这就是伯努利数的递推式,逆 ...
分类:
其他好文 时间:
2018-08-09 01:19:15
阅读次数:
144
时间尚早,今天多写一点 温故知新(三) Synchronized与volatile Synchronized 有以下两个含义: 一、一次只有一个线程可以执行代码的受保护部分 二、一个线程更改的数据对于其他线程是可见的 volatile只适合于控制对基本变量(int、boolean等)的单个实例的访问 ...
分类:
其他好文 时间:
2018-08-09 01:19:09
阅读次数:
122
Celery 什么是Celery? Celery是一种简单/高效/灵活的即插即用的分布式任务队列. Celery应用场景? 需要异步处理的任务,发邮件/发短信/上传等耗时的操作.最终到达提升用户体验的目的. Celery的模式 Celery主要是由Broker(中间人)和Worker(任务处理者)组 ...
分类:
其他好文 时间:
2018-08-09 01:19:00
阅读次数:
159
用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现。说这个话其实只有一半对,因为反应“多角色”的程序代码,最起码每个角色要给他一个线程吧,否则连实际场景都无法模拟,当然也没法说能用单线程来实现:比如最常见的“生产者,消费者模型”。 很多人都对其中的一些概念不 ...
分类:
编程语言 时间:
2018-08-09 01:18:53
阅读次数:
203
Java 5.0 提供的新的加锁机制:当内置加锁机制不适合时 , 作为一种可选择的高级功能 一个可重入的互斥锁 Lock,它具有与使用 synchronized 方法和语句所访问的隐式监视器锁相同的一些基本行为和语义,但功能更强大。 13.1 Lock 与 ReentrantLock Lock 中实 ...
分类:
其他好文 时间:
2018-08-09 01:18:44
阅读次数:
135
1.oracle数据库创建用户 2.oracle数据库设置密码 3.oracle数据库给用户授予权限 4.指定表空间 5.创建序列 6.变量赋值 7.按条件查询表格数目 8.Oracle数据库条件表达式使用 9.Oracle创建表格、删除表格、修改表格、查询表格 10.表格分页技术:核心(查出第n条 ...
分类:
数据库 时间:
2018-08-09 01:18:35
阅读次数:
190
1、git使用的常规操作 git pull——>编辑——>git add——>git commit——>git push 其实就是工作区——git add——>暂存区——git commit——>HEAD 2、比较本地仓库与远程仓库不同: git status 只能查看未push提交的次数; git ...
分类:
其他好文 时间:
2018-08-09 01:18:28
阅读次数:
146
1、String对象是不可变的,JDK源码的类的定义如下: 不可变的特性会带来一定的效率问题。比如“+”或“+=”操作字符串带来的性能。 示例1: 使用jdk的命令javap -c反编译,从以下结果可以看到,程序创建了一个StringBuilder对象,并使用append方法拼接,最后将对象转换成最 ...
分类:
其他好文 时间:
2018-08-09 01:18:17
阅读次数:
129
6.1 在线程中执行任务 围绕任务执\执行设计应用程序结构 .讲一个复杂的功能分解为多个独立的任务. 并可以并行执行, 在调度和负载均衡过程中实现更高的灵活性. 6.1.1 串行的执行任务 在单个线程中串行的执行各项任务. 6.1.2 显示的创建任务 正常负载情况下, 为每个任务分配一个线程可以提升 ...
分类:
其他好文 时间:
2018-08-09 01:18:10
阅读次数:
141
Tornado 和现在的主流 Web 服务器框架(包括大多数 Python 的框架)有着明显的区别:它是非阻塞式服务器,而且速度相当快。得利于其非阻塞的方式和对 epoll 的运用 基本操作 tornado_base.py 模板login.html <!DOCTYPE html> <html lan ...
分类:
其他好文 时间:
2018-08-09 01:17:58
阅读次数:
173
14.1 状态依赖性管理 基于先检查后执行的状态依赖性操作在多线程下常常发生一些我们不希望的结果.因此有必要对状态依赖操作进行管理, 重试的实现方式 : 自旋等待. 在条件不成立时一直询问, 直到条件成立. 会消耗大量的CPU时间 休眠. 如果条件不成立, 则休眠一段时间, 休眠过后继续测试条件是否 ...
分类:
其他好文 时间:
2018-08-09 01:17:52
阅读次数:
132
一、字符与字节与编码关系 ASCII码中,一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制。最小值0,最大值255。 UTF 8编码中,一个英文字符等于一个字节,一个中文(含繁体)等于三个字节。 ...
分类:
数据库 时间:
2018-08-09 01:17:43
阅读次数:
167
移动工具的使用 1.所在位置 2. 快捷键(v) 3. 案例 素材 步骤 1. 按下快捷键v,选择移动工具 2. Ctrl + 鼠标左键点击想要移动的水果图层 3. 移动到下图位置 完成 ...
分类:
移动开发 时间:
2018-08-09 01:17:37
阅读次数:
183
1.linux上的mysql的安装 1)mysql的安装 查看是否安装过mysql :rpm -qa |grep mysql* 2)卸载mysql rpm -e --nodeps 上述查询的mysql版本名 再次使用mysql :rpm -qa |grep mysql* 没有了,那么就卸载完成 3) ...
分类:
数据库 时间:
2018-08-09 01:17:31
阅读次数:
183
using System; using System.Collections.Generic; namespace YieldReturn { class Program { static void Main(string[] args) { var list = new List { 1, 2, ... ...
1、安装gcc zypper install gcc 2、解压,安装到指定路径 sudo tar xzf redis-4.0.1.tar.gzcd redis#安装到指定目录中sudo make PREFIX=/usr/local/redis install 3、在/usr/local/redis/ ...
分类:
其他好文 时间:
2018-08-09 01:17:12
阅读次数:
152