- 博客(24)
- 收藏
- 关注
原创 [REGEXP] - regular expresion 正则表达式
SELECT *FROM customersWHERE last_name LIKE '%field%'<=>SELECT *FROM customersWHERE last_name REGEXP 'field''^ + 字符串' ---> 限定以某字符串开头SELECT *FROM customersWHERE last_name REGEXP '^field'‘字符串 + $’ ---> 限定以某字符...
2022-01-24 03:04:01
211
原创 [LIKE]
不管后续长度与大小写%在左侧, 指定B或b开头的人SELECT *FROM customersWHERE last_nameLIKE 'b%'%在中间SELECT *FROM customersWHERE last_nameLIKE '%b%'%在右侧, 指定y结尾的人SELECT *FROM customersWHERE last_nameLIKE '%y'...
2022-01-24 00:48:11
473
原创 [BETWEEN]
BETWEEN 包含临界值SELECT *FROM customersWHERE points >= 1000 AND points <= 3000<=>SELECT *FROM customersWHERE points BETWEEN 1000 AND 3000
2022-01-24 00:30:40
170
原创 [IN] substitute a series of OR
SELECT *FROM customersWHERE state = 'VA' OR state = 'GA' OR state = 'FL'<=>SELECT *FROM customersWHERE state in ('VA', 'FL', 'GA')SELECT *FROM customersWHERE state NOT IN ('VA', 'FL', 'GA') homeworkSELECT *FROM product...
2022-01-24 00:28:14
153
原创 [AND] [OR] [NOT]
ANDSELECT * FROM CustomersWHERE birth_date >= '1990-01-01' AND points > 1000ORSELECT * FROM CustomersWHERE birth_date >= '1990-01-01' OR points > 1000SELECT * FROM CustomersWHERE birth_date > '1990-01-01' OR (poi
2022-01-24 00:18:55
125
原创 [SELECT] [WHERE] 语句
USE sql_store;SELECT * FROM customersWHERE customer_id = 1ORDER BY first_name-- 不区分大小写,子句换行无影响
2022-01-23 02:28:30
432
原创 7-7 哈利·波特的考试 (25 分)
#include <iostream>#include <cstdio>#define N 105#define INF 0x3f3f3f3f;using namespace std;int g[N][N];int n, m;int main(){ //读取输入 cin >> n >> m; for(int i = 1; i <= n; ++i) for(int j = 1; j .
2021-12-23 13:54:59
452
原创 7-6 公路村村通 (30 分) | 最小生成树
#include <iostream>#include <algorithm>using namespace std;const int N = 1e3 + 10, M = 3 * N;int n, m; //nums of village, roadint p[N]; //父亲struct Edge{ int a, b, w; bool operator <(const Edge &tmp)const { .
2021-12-23 09:05:22
911
原创 7-3 (选做) 城市间紧急救援 (25 分)
#include <bits/stdc++.h>#define N 505using namespace std;int n, m, st, ed;int g[N][N], dist[N], people_num[N], road_cnt[N], people_sum[N], pre[N];bool ct[N];void dijkstra(){ dist[st] = 0; //初始化路径长度 road_cnt[st] = 1; //初始化方案数量 .
2021-12-23 08:05:13
691
原创 7-1 最大子列和问题 (20 分)
#include <iostream>#include <algorithm>using namespace std;const int N = 1e5 + 5;int n, a[N], res = 0;int main(){ cin >> n; for(int i = 0; i < n; ++i) cin >> a[i]; int tmax = 0; for(int i = 0; i <.
2021-12-19 21:29:35
104
原创 7-5 (选做) 子序列的平均值 (140 分)
二分(对答案范围进行二分) + 前缀和1 读入数据的同时,记录最小值l与最大值r, 也就是二分的两个区间界限2 二分,每次增加1e-5来逼进答案3 假想一个均值(左右区间的一半),构造每个数组元素与均值的差,构造前缀和 前缀和 >= 0 表示可以达到这个均值 退出,继续二分//前缀和 + 二分#include <iostream>#include <algorithm>using namespace std;const int N = 1e..
2021-12-19 21:05:28
1454
原创 7-2 矩阵链相乘问题 | 区间dp
1 划分为若干长度为len的区间2 确定区间起点 i 与 终点3 用中间变量 k 遍历整个区间, 计算该区间min写法一:其中每个新区间的 dp[i][j] ( A(i) * A(i + 1) * A(i + 2) * ... * A(j) )需要先计算一次, 有个初值再进行后续循环#include <iostream>#include <algorithm>using namespace std;int dp[10005][10005];int ..
2021-12-10 18:07:53
332
原创 7-5 德邦国王 (110 分)
写了好久, 本来dfs函数里国王的坐标都写成了(kingX, kingY)导致有两个点过不去(可能递归层数比较深, 用到了多次国王坐标)。后来发现kingX, kingY原本只是为了记录初始状态时的国王坐标, 通过函数参数传进去了, 因此x,y维护的就是国王在每层递归的实时坐标。 这道题训练了我多次剪枝能力, 通过剪枝减少不必要的递归#include <iostream>#define N 5#define K 8#define M 15using...
2021-11-25 18:04:11
364
1
原创 回溯法-子集和问题
自己也看了很多大佬的回答,但还是没有太理解。我就一个now记录当前已拿总和, 不断与target进行比较。#include <iostream>#include <vector>using namespace std;vector<int>v(50000, 0), ans;int n, target, now, sum;bool flag = false;void dfs(int i, int now){ if(flag) ...
2021-11-24 21:18:06
181
原创 「是否二叉搜索树」
参考了一些博主的思路,自己一开始想到的是中序遍历输出一个数组,再for循环逐个比较是否为升序,奈何超时了...明天再试试0x00:从定义出发//判断中序输出是否为升序int Traverse_mid_Left(BinTree p,int val){ if(!p) return true; else return (p->Data < val && Traverse_mid_Left(p-&
2021-08-09 00:01:59
57
原创 「邻接矩阵存储图的深度优先遍历 」
void DFS( MGraph Graph, Vertex V, void (*Visit)(Vertex) ){ Visited[V]=true; Visit(V); for(int i=0;i<Graph->Nv;i++) { if(Graph->G[V][i] == 1 && Visited[i]==false) DFS(Graph,i,Visit); }}
2021-08-05 01:35:29
270
原创 「 单链表分段逆转 」
最近速成学到了图,复习一下前面的链表,因此找到了这道题。可是我发????这似乎有一定的难度,也是看了好多题解才写出来。一定要画图!画图yyds!void K_Reverse( List L, int K ){ int sum=0,i,j; List o=L->Next; while(o) {o=o->Next; sum++;} //计算链表中结点数量 if(K==0 || K== 1 || L->Next == NULL
2021-08-03 13:41:36
1234
原创 「还原二叉树」
学了半个月数据结构了,学到了哈夫曼树,也不算特别快吧...中间还有三天在划水这道题目有头绪,但是难点在于自己对于递归的理解和运用还不到位,对于先序中序创建二叉树的技术还不到家...参考了大佬createTree部分的代码第一次提交还报了一次错,因为没有写T->left和T->right而导致返回值没有送上来,只有一个测试点过了。后来发现了改过来了。#include <stdio.h>#include <stdlib.h>//定义树的结点类型typed
2021-08-02 01:29:31
74
原创 「先序输出叶结点」
void PreorderPrintLeaves( BinTree BT ){ if(BT) { if(BT->Left == NULL && BT->Right == NULL) printf(" %c",BT->Data); PreorderPrintLeaves(BT->Left); PreorderPrintLeaves(BT->Right); }}
2021-08-01 22:04:15
93
原创 「二叉树的遍历」
不知道为什么我用循环队列他就不给我过.....我不是怕他数据太多越界嘛,虽说给的实例才9个结点注释掉的是我想用的步长递增方式,看了别人大佬的我改成了++才给我过void InorderTraversal( BinTree BT ){ if(BT) { InorderTraversal(BT->Left); printf(" %c",BT->Data); InorderTraversal(BT->Right);
2021-08-01 21:56:56
79
原创 「求二叉树高度」
递归真的绕死我了......int GetHeight( BinTree BT ){ int LH,RH; //计数器 if(BT == NULL) return 0; //若为空树,即上一层递归中的根结点无左孩子或右孩子,计数为0 else { LH = GetHeight(BT->Left); //递归计算左子树的深度 RH = GetHeight(BT->Right); //递归计算右子树的深度
2021-08-01 21:05:15
71
原创 「最长连续递增子序列」
想了好久本来搞了两个循环,stack overflow了......后来想想用一个循环来实现每次看大佬题解都不敢细看,总是幻想能有一些新思路然后自己去写比如这次,看别人只用了一个循化,自己也去思考如何用一个循环写出来总而言之,菜是原罪......#include <stdio.h>const int max = 100005;int main(){ int start,length,maxlength=1,i,j,n; int a[max];
2021-07-29 20:55:00
132
原创 「求链表的倒数第m个元素」
用了很傻的方法,先一个while循环求出这条链表的长度在用条件判断找到倒数第n个元素接下来想想怎么优化吧...//L是给定的带头结点的单链表;函数Find要将L的倒数第m个元素返回,并不改变原链表。//如果这样的元素不存在,则返回一个错误标志ERROR。ElementType Find( List L, int m ) { int cnt=0,sum=0; List p=L; //傀儡指针 while(p->Next) //求得整个链表的长度 .
2021-07-29 17:57:58
576
原创 「最大子列和问题 」
本人最原始的暴力破解方法,外层循环不断回溯。测试点是通过了,但数字一旦很大运行时间也非常长。#include <stdio.h>int main(){ int sum,n,i,j,max=0; int a[100005]; scanf("%d",&n); //共n个测试数据 for(i=0;i<n;i++) scanf("%d",&a[i]); //扫入数据,下标0~n-1 for(i=0;i<n;i++) //
2021-07-29 13:36:32
79
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人