题目

Given an input string, reverse the string word by word.

Example 1:

Input: "the sky is blue" Output: "blue is sky the" Example 2:

Input: " hello world! " Output: "world! hello" Explanation: Your reversed string should not contain leading or trailing spaces. Example 3:

阅读全文 »

题目

Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.

For example, given n = 3, a solution set is:

[ "((()))", "(()())", "(())()", "()(())", "()()()"]

题解

阅读全文 »

题目

地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格 [35, 37] ,因为3+5+3+7=18。但它不能进入方格 [35, 38],因为3+5+3+8=19。请问该机器人能够到达多少个格子?

示例 1:

输入:m = 2, n = 3, k = 1 输出:3 示例 1:

输入:m = 3, n = 1, k = 0 输出:1 提示:

阅读全文 »

题目

You are given an n x n 2D matrix representing an image.

Rotate the image by 90 degrees (clockwise).

Note:

You have to rotate the image in-place, which means you have to modify the input 2D matrix directly. DO NOT allocate another 2D matrix and do the rotation.

阅读全文 »

题目

表1: Person

列名 类型
PersonId int
FirstName varchar
LastName varchar

PersonId 是上表主键 表2: Address

列名 类型
AddressId int
PersonId int
City varchar
State varchar
阅读全文 »

数据库学习笔记——关系数据库

关系

定义1 域是一组具有相同数据类型的值的集合。

定义2 给定一组域\(D_1,D_2,\cdots,D_n\),允许其中某些域是相同的,\(D_1,D_2,\cdots,D_n\)的笛卡尔积定义为 \[ D_1 \times D_2 \times\cdots\times D_n=\{(d_1,d_2,\cdots,d_n)|d_i \in D_i,i=1,2,\cdots,n\} \] 其中,每一个元素\((d_1,d_2,\cdots,d_n)\)叫做一个n元组(n-tuple),或简称元组(tuple)。元素中每一个值\(d_i\)叫做一个分量(component)。

一个域中允许的不同取值的个数称为这个域的基数(cardinal number)。

\(D_i(i=1,2,\cdots,n)\)为有限集,其基数为\(m_i(i=1,2,\cdots,n)\),则\(D_1\times D_2 \times\cdots\times D_n\)的基数M为 \[ M=\mathop{\Pi}\limits_{i=1}^{n} m_i \]

定义3 \(D_1 \times D_2 \times\cdots\times D_n\)的子集叫做在域\(D_1,D_2,\cdots,D_n\)的关系,表示为\(R(D_1,D_2,\cdots,D_n)\)

这里R表示关系的名字,n表示关系的目或度(degree)。

若关系中某一属性组的值能唯一地标识一个元组,而其子集不能,则称该属性组为候选码(candidate key)。

候选码的诸属性称为主属性(prime attribute)。不包含在候选码中的属性称为非主属性(non-prime attribute)或非码属性(no-key attribute)。

若一个关系有多个候选码,则选定一个为主码(primary key)。极端情况下,关系模式的所有属性是这个关系模式的候选码,称为全码。

阅读全文 »

数据库学习笔记——并发控制

为了保证事务的隔离性和一致性,数据库管理系统需要对并发操作进行正确调度。

并发操作带来的不一致性包括修改丢失(lost update)、不可重复读(non-repeatable read)、读“脏”数据(dirty row).

并发控制的主要技术有封锁(locking)、时间戳(timestamp)、乐观控制法(optimistic scheduler)和多版本并发控制(multi-version concurrency control,MVCC)等。

封锁

阅读全文 »

数据库学习笔记——关系数据理论

规范化

定义6.1 设R(U)是属性集U上的关系模式,X,Y为U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称X函数确定Y或Y函数依赖于X,记作\(X\rightarrow Y\)

例如X为人名,Y为该人的性别

定义6.2 在R(U)中,如果\(X\rightarrow Y\),并且对X的任何一个真子集X',都有\(X'\not\rightarrow Y\),则称Y对X完全依赖,记作\(X\stackrel{F}{\rightarrow}Y\).

\(X\rightarrow Y\),但Y不完全依赖于X,则称Y对X部分函数依赖,记作\(X\stackrel{P}{\rightarrow}Y\).

阅读全文 »

SQL学习笔记(三)——数据库的完整性

关系数据库管理系统使得完整性控制成为其核心支持的功能,从而能够为所有用户和应用提供一致的数据库完整性。

实体完整性

定义实体完整性

1
2
3
4
5
6
7
8
9
10
11
12
13
14
-- 将Student表中Sno属性定义为码(主键)
CREATE TABLE Student
(Sno CHAR(9) PRIMARY KEY,
Sname CHAR(20) NOT NULL,
Ssex CHAR(2),
Sage SMALLINT,
Sdept CHAR(20));

-- 将SC表中Sno、Cno属性组定义为码
CREATE TABLE Student
(Sno CHAR(9) NOT NULL,
CnO CHAR(4) NOT NULL,
Grade SMALLINT,
PRIMARY KEY(Sno,Cno));
阅读全文 »
0%