- 博客(40)
- 收藏
- 关注
原创 吴恩达机器学习(2)——线性回归与简单梯度下降
(x,y) one training example(x(i),y(i)x^{(i)},y^{(i)}x(i),y(i))
2019-01-22 14:07:45
267
原创 POJ 2251 Dungeon Master(BFS)
POJ 2251 Dungeon Master 三维迷宫的bfs,设置三维迷宫数组、移动方向数组、访问标记数组,然后bfs即可#include<iostream>#include<cstdio>#include<queue>#include<cstring>using namespace std;int vis[35][35][35...
2018-07-25 17:02:58
369
原创 UVA 11624 Fire(双向BFS)
UVA 11624 Fire 题目链接: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2671 要求人在有限的时间内逃生,与求最短路径相似,用广搜 开设两个二维数组,分别记录人、火到达某点的时间,然后进行两次BFS即可,...
2018-07-24 19:20:00
267
原创 HDU 1016 Prime Ring Problem(DFS)
HDU 1016 Prime Ring Problem dfs进行遍历即可#include&lt;cstdio&gt;#include&lt;iostream&gt;#include&lt;cstring&gt; using namespace std;//n最大为20,打表到40即可 int prime[40]={0,1,1,1,0,1,0,1,0,0,0,1,0,1,0,0,0...
2018-07-24 00:11:30
195
原创 HDU 1241 Oil Deposits(DFS)
HDU 1241 Oil Deposits 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1241 典型的dfs判断连通块数目的题目#include<cstdio>#include<iostream>using namespace std;char land[100][100];int num;int di...
2018-07-23 20:55:17
250
原创 POJ 1321 棋盘问题(深搜)
POJ 1321 棋盘问题 题目链接:http://poj.org/problem?id=1321 设置一个数组,用来标记当前列是否有棋子放置 因为按行进行判断,所以同行不可能有其他棋子#include<cstdio>#include<iostream>using namespace std;int vis[10]; //记录本列是否...
2018-07-23 20:15:42
241
原创 SQL基础知识
SQL基础知识(一)基本语句:SELECT、FROM、WHERE、ORDER、LIMIT 一段SQL语言实例如下:SELECT col1, col2FROM table1WHERE col3 &amp;gt; 5 AND col4 LIKE '%os%'ORDER BY col5LIMIT 10;SELECT :查询语句SQL不区分大小写真实情境很少用到DROP和CRE...
2018-06-08 07:28:01
8058
1
原创 SQL基础知识
SQL基础知识EDR SELECT 查询语句 SQL不区分大小写 真实情境很少用到DROP和CREATE语句,需要很高的权限,往往数据管理员才可以每个 SQL 查询 每个查询至少有一个 SELECT 和 FROM 语句。 SELECT 语句用于放置要显示数据的列。FROM语句用于放置要从中提取数据的表。SELECT * FROM orders;大写命令(SELECT、...
2018-06-07 20:23:43
1622
原创 LeetCode 20. Valid Parentheses
class Solution {public: bool isValid(string s) { stack stack; for(int i=0;i<s.size();i++){ if(s[i]=='{'||s[i]=='['||s[i]=='(') stack.push(s[i]); else{
2017-12-19 11:03:15
246
原创 二叉树 的 存储与基本操作实现
利用C语言指针实现了二叉树的建立,实现了二叉树的先序遍历、中序遍历、后序遍历、交换左右子树的递归版本,并给出了效率更高的非递归方法、求深度、交换左右子树(递归)操作
2017-11-04 12:20:06
1428
原创 Java集合
(一)概念 Java集合是Java中的工具类,可以存储任意数量的具有共同属性的对象。集合适用场景: 无法预测存储数据的数量 同时存储具有一对一关系的数据 需要进行数据的增删 数据重复问题(二)集合框架的体系结构 主要分为两类: 1.Collection:存储类的对象 2.Map:存储键值对Collection接口包含三个子接口:List(序列
2017-11-02 16:59:17
310
原创 并查集——路径压缩
关于Rank的优化上文中我们已经对代码进行了几次优化,使得进行连接操作的时候,所形成的数长度尽量短,但同时也存在另一种情况:集合元素多,但是每个元素分别指向根节点,这样就只有两层(举例),那么就应该把这棵树的根节点指向另一棵树的根节点,就出现了所谓的“集合元素多,但是树长度短“的情况,因此,应当首先考虑树的长度,而非树的元素量。
2017-09-25 11:11:50
756
原创 二分查找法与二分搜索树
使用前提:有序数列 迭代版本:template<typename T>int binarySearch(T arr[],int n,int target){ int l=0,r=n-1; while(l<=r){ int mid=l+(r-l)/2;// int mid=(l+r)/2; 可能会出现溢出 if(a
2017-09-21 16:56:48
420
原创 堆的思想及实现
最大堆: 1.堆中某个节点的值总是不大于其父节点的值 2.堆总是一棵完全二叉树。完全二叉树:除了最后一层节点,其他层所有的节点个数必须是最大值。最后一层所有的节点必须集中在左侧。二叉堆的数组实现:给每个节点编号,使得每个父节点的左节点序列号为父节点的二倍,右节点的序列号为父节点序列号的二倍加1parent(i) = i/2 left child(i) = 2*i right
2017-09-16 16:28:10
420
原创 (三)几种排序算法的学习总结(快速排序)
快速排序:“二十世纪最伟大的算法” 基础快速排序实现双路快速排序实现三路快速排序实现核心思想:每次从数组中选择一个元素作为基点,之后把该元素移动到排好序时应该所处的位置,使得基点之前的元素都小于它、之后的元素都大于它。之后对小于它、大于它的子数组分别递归进行快速排序 将元素移动到合适位置的函数:Partition
2017-09-16 08:42:30
504
原创 (二)几种排序算法的学习总结(归并排序)
(三)归并排序归并排序核心思想:将数组的元素不断二分(N个元素就有logN个层级),再向上归并(时间复杂度为O(n))(递归)。 途径:开辟一块相同大小的临时空间进行操作,使用三个索引分别表示:归并过程中跟踪的位置(k),两个表示两个子数组当前的元素(left、right),用middle表示中间位置//将arr[l...mid]和arr[mid+1...r]两部分进行归并 template<t
2017-09-14 20:19:04
589
原创 (一)几种排序算法的学习总结(选择排序与插入排序)
几种排序的学习总结(一)选择排序选择排序:在每次循环中找出最小的元素,将其移至开头,第二次找出次小元素,将其移至第二位,以此类推//泛型函数模板template<typename T>void selectionSort(T arr[],int n){//分别存放待排序的数组、数组元素个数 for(int i=0;i<n;i++){ int minIndex=i; /
2017-09-14 15:08:36
709
原创 HDU 2031进制转换
第一次写博客,有点小紧张一开始觉得真的这题摸不着头绪,后来上网学习了一下,发现还是有类似模板的原题如下:进制转换Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 47127 Accepted Submission
2017-02-21 12:50:34
586
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人