1、二叉查找树 首先,让我们先看一张图: 从图中可以看到,我们为 user 表(用户信息表)建立了一个二叉查找树的索引。 图中的圆为二叉查找树的节点,节点中存储了键(key)和数据(data)。键对应 user 表中的 id,数据对应 user 表中的行数据。 二叉查找树的特点就是任何节点的左子节点 ...
分类:
其他好文 时间:
2021-06-02 20:13:17
阅读次数:
0
从大的方面来分,C#的数据类型可分为三类:值类型,引用类型,指针类型。指针类型仅用于非安全代码中。 1 C#值类型可以分为:简单类型,结构类型,枚举类型。 1.1 简单类型 简单类型也是结构类型,因此有构造函数,数据成员,方法,属性。int i=int.maxvalue,string s=i.ToS ...
1、函数原型(利用指针求字符串的长度) #include <stdio.h> size_t strlen(const char *s) //函数头的形参为常数的、指向char型的指针,也就是接收的形参为指针(实际上传入的是字符串数组,函数间数组的传递实际上是通过指向第一个元素的指针完成的) { // ...
分类:
编程语言 时间:
2021-06-02 19:40:16
阅读次数:
0
##1. 定义模板 ###1.1 函数模板 ###1.2 类模板 ###1.3 模板参数 ###1.4 成员模板 ###1.5 控制实例化 ###1.6 效率与灵活性 ##2. 模板实参推断 ###2.1 类型转换与模板类型参数 ###2.2 函数模板显式实参 ###2.3 尾置返回类型与类型转换 ...
分类:
其他好文 时间:
2021-06-02 18:43:51
阅读次数:
0
简介 链表中倒数第K个节点. 思路 双指针, 然后一个指针延迟运行. code class Solution { public: ListNode* getKthFromEnd(ListNode* head, int k) { ListNode *p = head; ListNode *pk = h ...
分类:
其他好文 时间:
2021-06-02 18:31:26
阅读次数:
0
链式存储结构的优点: ① 结点空间可以动态申请和释放; ② 数据元素的逻辑次序依靠结点的指针来指示,插入和删除时不需要移动数据元素。 链式存储结构的缺点: ① 存储密度小,每个节点的指针域需要额外占用存储空间。当每个节点的数据域所占 字节不多时,指针 域所占存储空间的比重显得很大。 // 存储密度 ...
分类:
其他好文 时间:
2021-06-02 18:16:28
阅读次数:
0
编译器为class A{}生成的函数 1 class A 2 { 3 public: 4 A(); //缺省构造函数 5 A(const A&rhs); //拷贝构造函数 6 ~A(); //析构函数 7 A& operator=(const A&rhs); //赋值运算符 8 A* operato ...
分类:
编程语言 时间:
2021-06-02 18:11:51
阅读次数:
0
1、 #include <stdio.h> void assign1(int x[], int n)//函数间数组的传递是以数组第一个元素的指针的形式传递的,因此形参变为指向数组第一个元素的指针,形参和数组本身的行为一样。 { int i; for(i = 0; i < n; i++) { x[i] ...
分类:
编程语言 时间:
2021-06-02 17:38:23
阅读次数:
0
函数间数组的传递,是以指向第一个元素的指针的形式进行的。 在被调用的函数中作为指针接收的数组, 实际上就是调用方传递的数组。 Type*型指针p指向Type型数组a的起始元素a[0]时, 指针p的行为就和数组a本身一样。 值: a[i] = *(a + i) = *(p + i) = p[i]; 指 ...
分类:
编程语言 时间:
2021-06-02 16:49:25
阅读次数:
0
删除 指针p 指向的 结点b ① p->prior->next = p->next; ② p->next->prior = p->prior; ③ free(p); 代码部分: void ListDelete_DuL(DuLink &L, int i, ElemType &e){ // 删除带头结点 ...
分类:
其他好文 时间:
2021-06-02 16:42:32
阅读次数:
0