Ethan's Blog


  • Home

  • Archives

  • Tags

  • Search

数据库原理

Posted on 2018-01-08

SQL 语言的功能

SQL 是结构化查询语言(Structured Query Language)的缩写,其功能包括四个部分:

  • 数据查询,数据库中最常见的操作,通过 select 语句可以得到所需的信息;
  • 数据操纵,DML(Data Manipulation Language)主要包括插入数据、修改数据、删除数据;
  • 数据定义,DDL(Data Definition Language)实现数据定义功能,可对数据库用户、基本表、视图、索引进行定义与撤销;
  • 数据控制,DCL(Data Control Language)用于对数据库进行统一的控制管理,保证数据在多用户共享的情况下能够安全。

基本的 SQL 语句:

Read more »

《面试宝典》读书笔记 Ⅳ

Posted on 2018-01-06

容器、多线程、Java 数据库操作

Java Collections 框架

包含了大量集合接口以及这些接口的实现类和操作它们的算法。
Collection 是整个集合框架的基础,它里面储存一组对象,表示不同类型的 Collections,它的作用只是维护一组对象的基本接口而已。
Set、List、Map 都继承自 Collection 接口:

Read more »

Python 语言精要 Ⅲ

Posted on 2017-12-31

列表、集合以及字典的推导式

列表推导式是最受欢迎的 Python 的语言特性之一,只需一条简洁的表达式,即可对一组元素进行过滤,并对得到的元素进行转换变形。基本形式:

1
[expr for value in collection if condition]

这相当于下面这段 for 循环:

1
2
3
4
result = []
for val in collection:
if condition:
result.append(expr)

过滤条件可以省略。滤除长度小于等于 2 的字符串,并将剩下的字符串转换成大写字母形式:

1
2
3
4
strings = ['a', 'as', 'bat', 'car', 'dove', 'python']
[x.upper() for x in strings if len(x) > 2]

>>> ['BAT', 'CAR', 'DOVE', 'PYTHON']
Read more »

Python 语言精要 Ⅱ

Posted on 2017-12-27

元组

元组(tuple)是一种一维的、定长的、不可变的Python 对象序列。最简单的创建方式是一组以逗号隔开的值:

1
2
3
4
tup = 4, 5, 6
tup

>>> (4, 5, 6)

任何序列或迭代器都可以被转换为元组:

1
2
3
4
tup = tuple('string')
tup

>>> ('s', 't', 'r', 'i', 'n', 'g')

元组的元素也可以通过方括号([])进行访问。
元组可以通过加号(+)运算符连接起来以产生更长的元组。
一个元组乘以一个整数,相当于是连接该元组的多个副本:

Read more »

面试题 11:旋转数组的最小数字

Posted on 2017-12-21

把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如,数组 {3, 4, 5, 1, 2} 为 {1, 2, 3, 4, 5} 的一个旋转,该数组的最小值为 1。

  • 查找较为简单,不外乎顺序查找、二分查找、哈希表查找、二叉排序树查找。
  • 遇到排序的数组(或者部分排序的数组),可以尝试用二分查找算法。
  • 哈希表和二叉排序树查找的重点在于考查对应的数据结构,而不是算法:
    • 哈希表最主要的优点是能够在 O(1) 时间内查找某一元素(效率最高),缺点是需要额外的空间;
    • 二叉排序树对应的数据结构是二叉搜索树。
  • 排序复杂一些,要求比较插入排序、冒泡排序、归并排序、快速排序等不同算法的优劣。
  • 要求应聘者写出快速排序的代码:Partition 函数 + 递归。
    Read more »
1…484950…54
necusjz

necusjz

270 posts
16 tags
© 2016 - 2026 necusjz
Powered by Hexo
Theme - NexT.Mist