Data Structure
MachineLP
成功收获成果,失败收获智慧,投入收获快乐!
展开
-
深度优先搜索算法
基础题: input: n m下面是n行m列的矩阵,由’ . ‘和’ X ‘组成,求由(1,1)到(n,m)的最短路径#include<iostream>using namespace std;#define M 100#define INF 10000000// 定义四个方向,来寻找最短路径int dir[4][2] = {0,1, 0,-1,转载 2015-09-25 10:27:28 · 1181 阅读 · 0 评论 -
堆和栈的区别(个人感觉挺不错的)
本人作者写的挺不错的,当自己在编写程序中遇到这些问题的时候印象会更加深刻。在bbs上,堆与栈的区分问题,似乎是一个永恒的话题,由此可见,初学者对此往往是混淆不清的,所以我决定拿他第一个开刀。 首先,我们举一个例子: void f() { int* p=new int[5]; } 这条短短的一句话就包含了堆与栈,看到new,我们首先就应转载 2015-10-15 22:19:36 · 850 阅读 · 1 评论 -
data_structure_and_algorithm -- 4种常见二分查找变形问题
跟大神学习进步还是很快的,再说的直接一点就是:花钱买时间呃二分查找变形问题:(1)查找第一个值等于给定值的元素(2)查找最后一个值等于给定值的元素(3)查找第一个大于等于给定值的元素(4)查找最后一个小于等于给定值的元素 //(1)查找第一个值等于给定值的元素public int bsearch1(int[] a, int n, int value){ in...原创 2018-10-26 09:28:27 · 225 阅读 · 0 评论 -
data_structure_and_algorithm -- 哈希算法(上):如何防止数据库中的用户被脱库?
最近写的文章有点杂,看上去东一点西一点,最后会在博客目录中捋顺的。今天主要看一下哈希算法的应用,主要参考:前谷歌工程师王争的课程,感兴趣可以通过下面方式微信扫码购买:还记得 2011 年 CSDN 的“脱库”事件吗?当时,CSDN 网站被黑客攻击,超过 600 万用户的注册邮箱和密码明文被泄露,很多网友对 CSDN 明文保存用户密码行为产生了不满。如果你是 CSDN 的一名工程师,你会...原创 2018-11-10 16:44:27 · 1172 阅读 · 0 评论 -
data_structure_and_algorithm -- 哈希算法(下):哈希算法在分布式系统中有哪些应用?
今天主要看一下哈希算法的应用(二),主要参考:前谷歌工程师王争的课程,感兴趣可以通过下面方式微信扫码购买:上一节:data_structure_and_algorithm -- 哈希算法(上):如何防止数据库中的用户被脱库?介绍了哈希算法的四个应用,它们分别是:安全加密、数据校验、唯一标识、散列函数。今天,我们再来看剩余三种应用:负载均衡、数据分片、分布式存储。你可能已经发现,这三个应...原创 2018-11-10 20:50:36 · 336 阅读 · 0 评论 -
初始Nginx
Nginx中文文档:http://www.nginx.cn/doc/Nginx安装配置:http://www.runoob.com/linux/nginx-install-setup.html Nginx的三个主要的应用场景:原创 2018-11-13 09:06:30 · 167 阅读 · 0 评论 -
data_structure_and_algorithm -- 红黑树(上):为什么工程中都用红黑树这种二叉树?
今天主要看一下红黑树,主要参考:前谷歌工程师王争的课程,感兴趣可以通过下面方式微信扫码购买: 树、二叉树、二叉查找树。二叉查找树是最常用的一种二叉树,它支持快速插入、删除、查找操作,各个操作的时间复杂度跟树的高度成正比,理想情况下,时间复杂度是 O(logn)。不过,二叉查找树在频繁的动态更新过程中,可能会出现树的高度远大于 log2n 的情况,从而导致各个操作的效率下降。极端情况...原创 2018-11-16 08:59:42 · 1344 阅读 · 0 评论 -
data_structure_and_algorithm -- 跳表:python & java & c-cpp 实现
当开始深入的研究数据结构和算法你会爱上它。下面是python实现代码,后面要记得加注释啊啊啊from typing import Optionalimport randomclass ListNode: def __init__(self, data: Optional[int] = None): self._data = data sel...原创 2018-11-20 22:33:19 · 249 阅读 · 0 评论 -
data_structure_and_algorithm -- 红黑树(下):掌握这些技巧,你也可以实现一个红黑树
今天主要看一下红黑树,主要参考:前谷歌工程师王争的课程,感兴趣可以通过下面方式微信扫码购买: 红黑树是一个让我又爱又恨的数据结构,“爱”是因为它稳定、高效的性能,“恨”是因为实现起来实在太难了。我今天讲的红黑树的实现,对于基础不太好的同学,理解起来可能会有些困难。但是,我觉得没必要去死磕它。我为什么这么说呢?因为,即便你将左右旋背得滚瓜烂熟,我保证你过不几天就忘光了。因为,学习红黑...原创 2018-11-19 09:27:09 · 454 阅读 · 0 评论 -
LeetCode Algorithm
刷lc不为其他,只为工程能力扩展与思维提升!请看github:leetCode Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exact...原创 2018-11-23 22:56:08 · 283 阅读 · 0 评论 -
data_structure_and_algorithm -- 如何找到字符串中最长回文子串: python & java实现
Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000.Example 1:Input: "babad"Output: "bab"Note: "aba" is also a valid answer....原创 2018-11-29 09:14:42 · 313 阅读 · 0 评论 -
排序方法比较
原创 2016-09-11 10:59:16 · 619 阅读 · 0 评论 -
名侦探柯南(贪心问题)
题目1399:名侦探柯南 题目描述: 大家一定都看过《名侦探柯南》,我最开始看的是小说版本的,后来出了漫画版本,现在又有了动画片的版本。 引用彪叔的一条飞信:做男人就要做柯南。变得了正太,飚的到女声;学得好化学,射的了麻醉;踢得好足球,玩得好极限;破得了大案,干得过黑社会;开得了飞机,躲得过机枪;停得了爆炸,引得了雪崩,最牛的是有一个十几年只见了他几面却依旧死心踏地念念不忘的好女友。 好了,转载 2016-01-12 22:04:56 · 624 阅读 · 0 评论 -
Catch That Cow
Catch That Cow Time Limit:2000MS Memory Limit:65536K Total Submit:118 Accepted:30Description Farmer John has been informed of the location of a fugitive cow and wants to catch her immediately. He s翻译 2015-09-26 09:36:18 · 555 阅读 · 0 评论 -
red and black (深度优先搜索算法dfs)
Description There is a rectangular room, covered with square tiles. Each tile is colored either red or black. A man is standing on a black tile. From a tile, he can move to one of four adjacent tiles.翻译 2015-09-28 10:23:51 · 1172 阅读 · 0 评论 -
二叉树的遍历C实现(非递归)—先序遍历
用两种方法先序遍历: 1、访问根节点—根节点入栈—若有左孩子,访问,入栈;若无,回到父节点(top)找右孩子访问右孩子;循环入栈。 2、循环 :每次访问根节点—右孩子压栈—访问左孩子。 原理:先序遍历:根左右,所以访问根—把右孩子压栈—先访问左孩子。代码如下:#include <iostream>#include "stack"using namespace std;struct TNod翻译 2015-10-19 21:19:55 · 935 阅读 · 0 评论 -
二叉树的遍历C实现(非递归)—中序遍历
同上文法一方法类似实现: 原理:中序遍历-左根右 循环每次把左孩子入栈,直到叶节点;沿着栈里弹出的顺序一次访问右孩子。#include <iostream> #include "stack" using namespace std; struct TNode{ TNode *left; TNode *right; int data;};TNode *Root翻译 2015-10-20 21:53:06 · 701 阅读 · 0 评论 -
最大连续和---变种版
问题: 最大和子序列。问题描述: 给一个整数数组A={a1,a2,…an},将这个数组首位连成一个环装,它的一个子序列是指这个数组连续的一段,比如a2,a3,…,ak, ai。请从这个环上选取两个不重叠的非空子序列,使这两个子序列中的所有数字之和最大。 在三个样例中分别选取的子序列是: 样例一:{a1} {a3} 样例二:{a1} {a3} 样例三:{a5,a1} {a3}输入: 输入的转载 2015-10-07 19:50:27 · 806 阅读 · 0 评论 -
STL的应用
混杂游戏问题描述:以前流行玩一种文字游戏—混杂。作为混杂就是在一个已知的答案中解读一串被打乱的字符串。你的任务是写一个程序,解读这个难题。输入: 输入的一行是一个整数(1<=T<=100),表示有几组输入数据。 每组输入由4部分组成: (1)一个字典,最多包含2000个单词,每个单词一行。 (2)一行字符串”XXXXXX”,作为字典部分的结束标志。 (3)1个或多个( 最多2000个翻译 2015-10-08 21:53:48 · 568 阅读 · 0 评论 -
stack实现queue ; list实现stack
// 栈实现队列 实现方法:将栈中的元素读到另一个栈中,然后从第二个栈读出来就可以实现队列的先进先出。#include<iostream>#include<stack>using namespace std;// implement queue use stacktempalte<class T> class Queue{ stack<T> st1,st2;public:转载 2015-09-20 08:53:52 · 881 阅读 · 0 评论 -
字典树 模板
建立字典树,求以……为前缀的单词个数统计难题 问题描述: lgnatius最近遇到一个难题,老师交给他很多单词(只有小写字符组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的字符数量(单词本身也是自己的前缀)。输入: 输入数据的第一部分是一张单词表,单词的长度不超过10,它们代表的是老师交给lgnatius统计的单词,一个空行代表单词表的结束。第二部分是一连串的提问,每行一个转载 2015-09-20 21:42:28 · 617 阅读 · 0 评论 -
博弈论 + 按位异或
此题为随机博弈题目。随机博弈指的是这样的一个博弈游戏,目前有任意堆石子,每堆石子个数也是任意的,双方轮流从中取出石子,规则如下: 1〉每一步应取走至少一枚石子;每一步只能从某一堆中取走部分或全部石子; 2〉如果谁取到最后一枚石子就胜 也就是尼姆博弈(Nimm Game)这种博弈的最终状态是:最后剩下一堆石子,当前取石子的人一次取完剩下的全部石子获胜。当石子剩下两堆,每堆1颗的时候,当前取的人显转载 2015-10-09 19:18:35 · 684 阅读 · 0 评论 -
qsort原理和实现
#include <iostream>#include <stdlib.h>#include <ctime>using namespace std;// 确定快速排序中间值那个位置,用来进行比较// 左边的值 < 右边的值int prtition(int *A, int p, int r){ int i,j,x; x = A[r]; i= p-1; for原创 2015-09-23 21:28:20 · 5283 阅读 · 0 评论 -
给定字典做分词
算法: 给定一个字典和一句话,做分词。 Target: 输入字典,输出所有可能的分词结果。 思路: dfs 加速:首先判断是不是这句话里所有的词在字典中都有(Validate)#include <iostream>#include <stdio.h>#include "vector"#include <set>#include <unordered_set>using namespa翻译 2015-11-12 15:52:55 · 708 阅读 · 0 评论 -
所见即所得
看到的只有认真总结积累沉淀,才能做到所见即所得!!! 一直提倡开源,闭源阻碍不了社会的进步,只会使自己退步,因为跟不上时代,不进则退。周末笔记,不严谨,只是对技术的执着!没有比较很难去发现自己的问题,短时间内提供算法到最优,‘需要对业务和算法深刻的洞察,问题肯定是有解决方法的,遇到问题请问一句自己:针对业务目前算法是最优的吗? 优化问题的解决对应有ML/DL的优化算法、数据结构和算法...原创 2019-01-13 10:37:26 · 1535 阅读 · 0 评论