A_数据结构和算法
文章平均质量分 89
chao2016
容易干不成大业绩!
展开
-
int, long, long long类型的范围
类型 最小值 最大值 unsigned int 0 4294967295 (2^32 - 1) int -2147483648 2147483647 (2^31 - 1) unsigned long 0 4294967295 (2^32 - 1) long -2147483648 2147483647 (2^31 - 1) U原创 2017-06-16 23:29:28 · 49159 阅读 · 0 评论 -
树的遍历 之 已知后序与中序输出先序
注:每个结点不同值// 因为是输出先序(根左右),所以先打印出当前根结点,然后打印左子树,再打印右子树。左子树在后序中的根结点为root–(end–i)-1,即为当前根结点-右子树的个数-1(根)。左子树在中序中的起始点start为start,末尾end点为i–1.右子树的根结点为当前根结点的前一个结点root–1,右子树的起始点start为i+1,末尾end点为end。#include <io原创 2017-06-12 17:24:04 · 1744 阅读 · 0 评论 -
图的存储方法
1.邻接矩阵int E[110][110];E[1][2]=1;E[5][3]=0;2.邻接链表#include <vector>#include <cstdio>using namespace std;const int MAXN = 100000;vector<int> edge[MAXN];int main(){ int n, m; //n顶点,m边 for(int i原创 2017-06-13 23:40:02 · 1837 阅读 · 0 评论 -
算法随笔(1)
9月21日-算法课上的小题目1中间数9月22日-算法课上的小题目2一个开关9月21日-算法课上的小题目1:中间数 在一个数组中,如{1,6,4,5,7,9,8,10,14,12},存在这样的数:7和10,它们的左边全部比自己小,右边全部比自己大,这样的数成为中间数。设计一个求中间数的算法。思想:从左边遍历一次数组,求出满足左边全部比自己小的数;从右边遍历一次数组,求出满足右边全部比自己大得数。原创 2017-09-22 23:43:11 · 1588 阅读 · 0 评论 -
问题的复杂性小结
0与算法复杂性的区别1P问题2NP问题3NP-Complete问题4NP-Hard问题5Non-NP问题关系图0、与算法复杂性的区别算法的复杂性是指解决问题的一个具体的算法的执行时间,这是算法的性质。问题的复杂性是指这个问题本身的复杂程度,是问题的性质。 比如排序问题的复杂性是O(nlgn),但是排序算法有很多,冒泡法是O(n^2),快速排序平均情况下是O(nlgn)等等,排序问原创 2017-10-29 12:21:13 · 5623 阅读 · 0 评论 -
稀疏矩阵(coo_matrix, csr_matrix, csc_matrix)的定义和存取
1. 定义1.1 coo_matrix1.2 csr_matrix1.3 csc_matrix2. 存储和读取2.1 法一:现成的API2.2 法二:自己发明的笨方法2.3 更改ndarray数据格式的方法前言:在以下场景中第一次碰到稀疏矩阵:enc = OneHotEncoder()enc.fit(data[feature].values.reshape...原创 2018-05-16 23:44:32 · 12717 阅读 · 4 评论 -
图灵完备?
这个词源于引入图灵机概念的数学家艾伦·图灵(Alan Turing)。图灵机会受到存储能力的物理限制。图灵完备通常指具有无限存储能力的通用物理机器或编程语言。简单来说,一切可计算的问题都能计算,这样的虚拟机或者编程语言就叫图灵完备的。...原创 2018-08-03 21:27:51 · 2479 阅读 · 0 评论 -
各种数据结构的时间复杂度分析
对于同一个数据结构来说,底层实现的不同往往会呈现出不同的时间复杂度。以数组为例: . 普通数组实现 顺序数组实现 二分搜索树(平衡) 插入 O(1) O(n) O(logn) 查找 O(n) O(logn) O(logn) 删除 O(n) O(n) O(logn)1. 动态数组对于一个基于Jav...原创 2018-09-05 15:53:58 · 30699 阅读 · 3 评论 -
数据结构:分类
1线性(Linear):数组、链表、栈、队列 树(Tree) 图2静态:数组 动态:链表原创 2018-09-13 16:31:50 · 1999 阅读 · 0 评论