首页 > 编程语言 >c++面试学习2

c++面试学习2

时间:2023-06-11 13:55:49浏览次数:41  
标签:索引 c++ 节点 学习 面试 排序 数据 主键 非簇

1. 排序算法及其比较次数

排序次数的数量级决定了排序算法的复杂度(作为个人纪录,下面图片写的不要清晰 见谅)

 

2. fgets(s,n,f)函数的功能:

原型是char *fgets(char *s, int n, FILE *stream);

从流中读取n-1个字符,除非读完一行,s用来接收字符串,如果读取成功返回s的指针,否则返回NULL。n-1是一次读取的长度,默认为1k,即1024。f是文件指针,就是从f这个文件输入流中读取n-1个字符保存到s中。

 

3.数据库中索引,簇索引,非簇,唯一,复合,覆盖索引的区别

数据库中的索引是一种用于提高查询效率的数据结构,包括簇索引、非簇索引、唯一索引、复合索引和覆盖索引。

数据表的索引从数据的存储方式上可以分为簇索引和非簇索引。簇索引和非簇索引是一种数据存储方式,

簇索引:使用主键作为索引,可以加速基于主键的查询,因为它将数据存储在按照主键排序的结构中,查找主键时可以直接定位到数据的物理位置,每个表只能创建一个簇索引。叶子节点就是数据节点。

非簇索引:非簇索引不按照主键排序,而是将主键和索引组合在一起存储,叶子节点包含的是索引字段值和指向数据页数据行的逻辑指针。每个表可以创建多个非簇索引。

簇索引的叶子节点就是数据节点,非簇索引的叶子节点仍是索引节点,只不过有指向对应数据块的指针。

 

标签:索引,c++,节点,学习,面试,排序,数据,主键,非簇
From: https://www.cnblogs.com/yz-lucky77/p/17450323.html

相关文章

  • c++单件模式
    1.意图      保证一个类仅有一个实例,并提供一个访问它的全局访问点。2.动机      对一些类来说,只有一个实例是很重要的。虽然系统中可以有许多打印机,但却只应该有一个打印假脱机(printerspooler),只应该有一个文件系统和一个窗口管理器。一个数字滤波......
  • 玩转Google开源C++单元测试框架Google Test系列(gtest)(总)
    前段时间学习和了解了下Google的开源C++单元测试框架GoogleTest,简称gtest,非常的不错。我们原来使用的是自己实现的一套单元测试框架,在使用过程中,发现越来越多使用不便之处,而这样不便之处,gtest恰恰很好的解决了。其实gtest本身的实现并不复杂,我们完全可以模仿gtest,不断的完善我们......
  • 用C++封装的ADO类
    用C++封装的ADO类作者:刘振海.H文件//ADO.h:interfacefortheCADOclass.////#if!defined(AFX_ADO_H__5A466E67_5E04_445D_9CB0_C64650B9AC68__INCLUDED_)#defineAFX_ADO_H__5A466E67_5E04_445D_9CB0_C64650B9AC68__INCLUDED_#if_MSC_VER>1000#pragmaonce......
  • linux学习笔记:网路诊断工具-mtr命令
    网络诊断工具-mtr命令最近在面试的过程中,被问到了mtr命令,一脸懵逼,据面试官了解,该命令在公司里是经常使用的,借此我也来学习一下!网络诊断的背景网络诊断工具包括ping,traceroute和mtr,它们使用Internet控制消息协议(ICMP)数据包来测试Internet上两点之间的连接和传输。当用户在Intern......
  • 2013-7-12学习笔记
    形参改变影响实参主要应用在以下几个方面:1.用于外部函数要交换主函数中的两个值,可以用指针来实现,但通过指针来实现主函数中两个数的交换必须要知道,哪些类型属于值传递,哪些类型属于地址传递,对于值传递的那些类型(例如:整形、字符型)才有必要用指针来实现,因为数组,字符串属于地址传递类......
  • 第四天打卡|24. 两两交换链表中的节点 ● 19.删除链表的倒数第N个节点 面试题 02.07.
    24.两两交换链表中的节点:简单的交换 19.删除链表的倒数第N个节点: ●  面试题 02.07. 链表相交:这题没看过答案真的写不出来。太巧妙了  142.环形链表II:这题写过但是忘记怎么解的了还是看的答案。下次不能忘记  ......
  • 算法学习day52动态规划part13-674、300、718
    packageLeetCode.DPpart13;/***674.最长连续递增序列*给定一个未经排序的整数数组,找到最长且连续递增的子序列,并返回该序列的长度。*连续递增的子序列可以由两个下标l和r(l<r)确定,*如果对于每个l<=i<r,都有nums[i]<nums[i+1],*那么子序列[nums[......
  • 算法学习day53动态规划part14-1143、53、1035
    packageLeetCode.DPpart14;/***1143.最长公共子序列*给定两个字符串text1和text2,返回这两个字符串的最长公共子序列的长度。*如果不存在公共子序列,返回0。*一个字符串的子序列是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些......
  • 详解VOLATILE在C++中的作用
    VOLATILE的介绍     volatile类似于大家所熟知的const也是一个类型修饰符。volatile是给编译器的指示来说明对它所修饰的对象不应该执行优化。volatile的作用就是用来进行多线程编程。在单线程中那就是只能起到限制编译器优化的作用。所以单线程的童鞋们就不用浪费精力看下......
  • [c/c++/OC]高质量的面试题及答案及注解
    一、选择题C语言:1.声明语句为inta[3][4];下列表达式中与数组元素a[2][1]等价的是(A)。A、*(a[2]+1)B、a[9]C、*(a[1]+2)D、*(*(a+2))+1a[2]<==>*(a+2)是等价的C两个数反过来了,D、1放进去2.请问经过表达式a=5?0:1的运算,变量a的最终值是(C......