首页
学习
活动
专区
工具
TVP
发布

从流域到海域

专栏作者
439
文章
499062
阅读量
59
订阅数
Redis常用数据类型及其对应的底层数据结构
Redis是一种键值(Key-Value)数据库。相较于MySQL之类的关系型数据库,Redis是一种非关系型数据库。Redis存储的数据只包含键和值两部分,只能通过键来查询值。这样简单的存储结构,能让Redis的读写效率非常高(HashMap读写效率都是O(1))。
Steve Wang
2022-05-10
3510
Redis数据库 专题
高性能:从内存读取数据比从硬盘读取要快很多。如果数据库中对应的数据改变之后,同步改变缓存中相应的数据即可。
Steve Wang
2022-05-10
7150
Go 反射机制详解及实例 【Go语言圣经笔记】
Go语言提供了一种机制,能够在运行时更新变量或检查它们的值、调用它们的方法和它们支持的内在操作,而不需要在编译时就知道这些变量的具体类型。这种机制被称为反射(这里反射的定义和其他语言大体相同)。反射也可以让我们将类型本身作为第一类的值类型处理。
Steve Wang
2021-12-06
1K0
Go语言中的JSON处理 【Go语言圣经笔记】
JavaScript对象简谱(JSON, Java Script Object Notation)是一种用于发送和接收结构化信息的标准协议。在类似的协议中,JSON并不是唯一的一个标准协议。 XML(§7.14)、ASN.1和Google的Protocol Buffers都是类似的协议,并且有各自的特色,但是由于简洁性、可读性和流行程度等原因,JSON是应用最广泛的一个。
Steve Wang
2021-12-06
5860
Go 结构体【Go语言圣经笔记】
结构体是一种聚合的数据类型,它是由零个或多个任意类型的值聚合成的实体。每个值称为结构体的成员。
Steve Wang
2021-12-06
3710
Go Map 【Go语言圣经笔记】
哈希表是一种巧妙并且实用的数据结构。它是一个无序的key/value对的集合,其中所有的key都是不同的,然后通过给定的key可以在常数时间复杂度内检索、更新或删除对应的value。
Steve Wang
2021-12-06
7030
Redis常用数据类型对应的数据结构
Redis是一种键值(Key-Value)数据库。相较于MySQL之类的关系型数据库,Redis是一种非关系型数据库。Redis存储的数据只包含键和值两部分,只能通过键来查询值。这样简单的存储结构,能让Redis的读写效率非常高(HashMap读写效率都是O(1))。
Steve Wang
2020-10-10
5470
改善深层神经网络 - 第二课第三周作业 TensorFlow Tutorial
Welcome to this week’s programming assignment. Until now, you’ve always used numpy to build neural networks. Now we will step you through a deep learning framework that will allow you to build neural networks more easily. Machine learning frameworks like TensorFlow, PaddlePaddle, Torch, Caffe, Keras, and many others can speed up your machine learning development significantly. All of these frameworks also have a lot of documentation, which you should feel free to read. In this assignment, you will learn to do the following in TensorFlow:
Steve Wang
2019-05-29
2K0
Kosaraju算法
SCC = strong connected component. 即强连通分量。
Steve Wang
2019-05-28
7710
《数据结构》 定长顺序串常用操作代码集合
代码来自老师上课使用的ppt或者课本 /*定长顺序串*/ #define MAXLEN 40 typedef struct { char ch[MAXLEN]; int len; } SString /*插入函数*/ /*在串S中下标为pos的字符之前插入串t*/ int StrInsert(SString *S, int pos, SString t) { int i; if(pos < 0 || pos > S->len) return ERROR; if(
Steve Wang
2018-02-05
5250
二叉树的性质和常用操作代码集合
二叉树的性质和常用操作代码集合 性质: 二叉树的性质和常用代码操作集合 性质1:在二叉树的第i层上至多有2^i-1个结点 性质2:深度为k的二叉树至多有2^k - 1个结点 性质3:对任意一棵二叉树T,若终端结点数为n0,而其度数为2的结点数为n2,则n0 = n2 + 1 满二叉树:深度为k且有2^-1个结点的树 完全二叉树:深度为k,结点数为n的二叉树,如果其结点1~n的位置序号分别与等高的满二叉树的结 点1~n的位置序号一一对应,则为完全二叉树
Steve Wang
2018-02-05
6580
图(Graph)的常用代码集合
图的相关概念请查阅离散数学图这一章或者数据结构中对图的介绍。代码来自课本。 /*Graph存储结构*/ //邻接矩阵表示法 #define MAX_VERTEX_NUM 20 /*最多顶点个数*/ #define INFINITY 32768 /*表示极大值,即∞*/ /*图的种类:DG表示有向图,DN表示有向网,DUG表示无向图,UDN表示无向网*/ typedef enum {DG, DN, UDG, UDN} GraphKind; /*枚举类型*/ typedef char Ve
Steve Wang
2018-02-05
1.2K0
迪杰斯特拉(Dijkstra)算法求图中最短路径
迪杰斯特拉(Dijkstra )算法: 对于图G=(V,E),将图的顶点分为两组: 顶点集S:已求出的最短路径的顶点集合(初始为{v0}); 顶点集V-S:尚未求出最短路径的顶点集合(初始为V-{v0} )。 算法按最短路径长度的递增顺序逐个将V-S的顶点加入S中,直到所有顶点均被加入S为止。 算法需借助辅助数组dist[N], dist[i]表示目前已经找到的、从开始点v0到终点vi的当前最短路径的长度。 dist各元素的初值:若从v0到vi存在弧,则dist[i]为弧上
Steve Wang
2018-02-05
9010
弗洛伊德(Floyd)算法
弗洛伊德(Floyd)算法求图中两点的最短路径 佛罗依德(Floyd )算法的基本思想: 设图g用邻接矩阵法表示,求图g中任意一对顶点vi与vj间的的最短路径。 (-1)将vi到vj的最短的路径长度初始化为g.arcs[i][j].adj,进行如下n次比较和修正: (0)在vi与vj间加入顶点v0,比较(vi, v0, vj )和(vi, vj)的路径的长度,取其中较短的路径作为vi到vj的且中间顶点编号不大于0的最短路径。 (1)在vi与vj间加入顶点v1,得(vi,…, v1 )
Steve Wang
2018-02-05
8080
堆和栈的区别
堆(heap)和栈(stack) 在计算机领域,堆栈是一个不容忽视的概念,堆栈是两种数据结构。堆栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(top))对数据项进行插入和删除。 在单片机应用中,堆栈是个特殊的存储区,主要功能是暂时存放数据和地址,通常用来保护断点和现场。要点:堆,队列优先,先进先出(FIFO—first in first out)。栈,先进后出(FILO—First-In/Last-Out) 堆栈是一种存储部件,即数据的写入跟读出不需要提供地址,而是根据写入的顺序
Steve Wang
2018-02-05
1.2K0
《数据结构》 顺序表常用操作代码集合
Ps:每段代码中,添加了署名Solo的是博主自己写的,其余来自课本或者老师。 //定义线性表的存储结构 #define MAXSIZE 100 typedef struct { ElemType elem[MAXSIZE]; //ElemType自定义 int last; } SeqList; //线性表按查找内容运算 Locate(L,e)函数 int Locate(SeqList L, ElemType e) { i = 0; while((i <= L.last)
Steve Wang
2018-02-05
5120
《数据结构》 单链表常用操作代码集合
Ps:每段代码中,添加了Solo署名的是博主自己写的,其余来自课本或老师。 //单链表存储结构 typedef struct Node //结点类型定义 { ElemType data; struct Node *next; //LinkList为结构体指针类型 } Node, *LinkList; //初始化单链表 InitList(LinkList *L) { *L = (LinkList)malloc(sizeof(Node)); //建立头结点 (*L)->ne
Steve Wang
2018-02-05
1.3K0
《数据结构》 循环链表和双向链表常用操作代码集合
Ps:每段代码中,添加了署名Solo的代码为博主本人所写,其余来自课本或者老师。 大量操作等同于单链表。重复的操作不再贴出,可以查看之前的博文。 循环链表 //结构体部分同单链表 略 //初始化循环链表 InitCLinkList(LinkList *CL) { *CL = (LinkList)malloc(sizeof(Node)); //建立循环链表的指针 (*CL)->next = *CL; //建立空的循环链表 } //尾插法建立循环单链表 void CreateCLin
Steve Wang
2018-02-05
5680
《数据结构》 栈代码操作集合
栈的基本操作代码,来自《数据结构-用C语言描述》(第二版)高教社 栈的数据结构相当于受限制(只能从栈顶取元素,先进后出LIFO)的顺序表或单链表,可以参考之前的博客。 /*以下为顺序栈*/ #define Stack_Size 50 /*设栈中元素为50*/ typedef struct { StackElemType elem[Stack_Size]; int top; //用来存放栈顶元素的下标 } SeqStack; /*初始化*/ void InitStack(S
Steve Wang
2018-02-05
5360
《数据结构》 队列(Queue)操作代码集合
队列基本操作代码集合,来自《数据结构-用C语言描述》(第二版) 高教社 队列是受限制的链表或顺序表(只能从队首取结点,先进先出FIFO),相关操作可以查看之前的博客。 /*链队列*/ typedef struct { QueueElemType data; struct Node *next; } LinkQueueNode; typedef struct { LinkQueueNode *front; LinkQueueNode *rear; } LinkQue
Steve Wang
2018-02-05
4740
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档