![](https://img-blog.csdnimg.cn/20200206115126100.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
笔试常考点
重要笔试题目
别惹我会变开心
谦谦君子,卑以自牧
展开
-
算法学习:二叉树的前中后序遍历(递归与不递归)
文章目录1、二叉树的遍历1.1 先序遍历1.2 中序遍历1.3 后序遍历1、二叉树的遍历二叉树的遍历一般有先序遍历、中序遍历、后序遍历以及层次遍历。1.1 先序遍历递归的方式实现先序遍历void pre_traverse(Node *root){ if(NULL == root) return; //到达空树,递归的边界 //访问根节点root printf("%d \n",...原创 2020-03-03 20:53:30 · 216 阅读 · 0 评论 -
笔试题:约瑟夫环的问题
约瑟夫游戏的大意:30个游客同乘一条船,因为严重超载,加上风浪大作,危险万分。因此船长告诉乘客,只有将全船29个旅客投入海中,其余人才能幸免于难。无奈,大家只得同意这种办法,并议定30个人围成一圈,由第一个人数起,数到第三个人,便将他投入大海中,如此,循环的进行,直到剩下一个游客为止。问:哪些位置是将被扔下海的位置?int main(void){ int a[30] = ...原创 2020-03-03 13:23:59 · 447 阅读 · 0 评论 -
算法学习:八皇后问题(回溯算法)
国际象棋中,皇后可以在横、竖、斜线上不限步数地吃掉其他棋子。如何将8个皇后放在棋盘上(8*8个方格),使它们谁也不能被吃掉!这就是著名的八皇后问题。已知8皇后问题一共有92组解,即92个不同的皇后串思路:1、从第0行开始,在第0行的第0列放置一个皇后,依次在第1行~第7行的某个位置放置一个皇后,判断该位置能否放置皇后,如果不行,则在该位置后面一个位置再尝试着放一个皇后,如果可以则放一个皇后在...原创 2020-02-29 20:43:37 · 779 阅读 · 0 评论 -
完全二叉树的笔试题【常考点】
A:假如一颗完全二叉树有n个结点请问最后一个非叶子结点的编号是多少?答案:n/2B:假如一颗完全二叉树的最后一个非叶子结点的编号为n,那么请问这颗二叉树有多少个结点?答案:2n或者2n+1C:假如一颗完全二叉树有n个结点,请问叶子结点的个数是多少?答案:n为偶数:n/2n为奇数:n/2 + 1...原创 2020-02-24 10:32:00 · 689 阅读 · 0 评论 -
Linux命令及作用
创建目录:mkdir 目录名exp: mkdir test 创建一个名为test的目录删除目录:rmdir 目录名exp: rmdir test 删除一个名为test的空目录rmdir -r 目录名exp: rmdir -r test (-r删除目录下所有内容)目录切换:cd 目录cd / 切换到根目录cd …/ 切换到上一级目录(cd …)cd ~ 切换到...原创 2020-02-17 13:31:40 · 206 阅读 · 0 评论 -
软链接和硬链接的区别【笔试题重点】
软链接和硬链接的区别?软链接:链接文件和被链接的文件是两个不同的文件,删除链接文件不会影响被链接的文件,但是删除被链接的文件,链接的文件会失效,因为链接文件中存储的是被链接文件的名字。硬链接:链接文件和被链接的文件是同一个文件,因为这两个文件的inode编号是一样的,删除其中一个文件另外一个文件依然存在,因为删除文件只是链接数-1。...原创 2020-02-17 12:30:08 · 274 阅读 · 1 评论 -
C语言笔试题计算字符串中子串出现的次数
笔试题:计算字符串中子串出现的次数/* @brief:计算字符串中子串出现的次数 @param:*str接收字符串的首地址 @param:*substr接收子串的首地址 return:返回子串出现的次数*/int substr_num(char *str, char *substr) { /** 记录子串出现的次数 */ int cnt = 0; char *ptr = st...原创 2020-02-16 19:49:03 · 997 阅读 · 0 评论 -
C语言实现去掉字符串中重复的字符
写一个函数,去掉一个字符串中重复的字符,比如将"goole"转成"gole"char * str_uniq(char* str){ int i = 0; int j = 0; int k = 0; while(str[i] != '\0') { j = i + 1; while(str[j] != '\0') { if(str[i] == str[j]) {...原创 2020-02-15 18:31:46 · 6589 阅读 · 0 评论 -
C语言二分查找算法演示
二分查找(binary search)是编程技术领域一种非常著名也比较简单的算法,它可以使得查找元素的效率得到几何量级的提高。注意:二分查找的排序必须是一个有序的排列(从大到小或从小到大)。二分查找算法,简单点说,就是先将一个有序排列最中间的元素x取出来与查找的元素进行比较,从而确定查找的元素是在x的左侧还是右侧(或者x本身),从而缩小查找的区间范围。然后再继续取出缩小范围后的有序排列中最中间的...原创 2020-02-09 11:55:47 · 347 阅读 · 0 评论 -
C语言简单冒泡排序法(详解)
冒泡排序算法的原理如下:(升序)比较相邻的元素,如果第一个比第二个大,就交换它们两个的值。对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。第一次冒泡,最后的元素会是最大的数。重复以上的步骤,除了最后一个。每次排序的元素都会减少,直到没有任何一对元素需要比较。冒泡排序最好的时间复杂度是O(n),最坏的时间复杂度是O(n^2)void bubbleSort(int* pAr...原创 2020-02-08 13:34:24 · 1847 阅读 · 0 评论 -
C语言字符串strcat和strncat函数算法演示
一、strcat(dest, src)会将字符串src追加到字符串dest的尾部,dest最后的结束字符’\0’会被覆盖掉,并在连接后的字符串的尾部再添加一个’\0’。注意:dest要有足够的空间来容纳要追加的字符串。char* my_strcat(char* dest, char* src){ int i = 0; int j = 0; while(dest[i] != '\0') ...原创 2020-02-07 20:20:47 · 235 阅读 · 0 评论 -
C语言字符串strcmp和strncmp函数算法演示
一、strcmp函数是用来比较2个字符串的函数,如:字符串str1、tr2,从第一个字符开始比较,如果到最后两个字符串完全相等,则返回0,若出现不同字符,则比较这两个字符的ASCII码的大小,若字符串str1大于字符串str2,则返回值大于0的值,则返回值小于0的值int my_strcmp(char* str1, char* str2){ int i = 0; while(1) { ...原创 2020-02-07 19:38:42 · 314 阅读 · 1 评论 -
C语言字符串strcpy和strncpy函数算法演示
实现strcpy的功能,将src所指向的地址空间中的字符串拷贝到dest所指向的地址空间中。拷贝的逻辑:遍历src所指向的地址空间中的每一个字符,并且将遍历到字符依次拷贝到dest所指向的地址空间中,直到遍历到‘\0’。!!!注意:strcpy是会拷贝’\0’的!!!char* my_strcpy(char* dest, char* src){ int i = 0; while('\0...原创 2020-02-07 12:33:37 · 166 阅读 · 1 评论 -
求字符串的长度strlen函数的算法演示
这也是一道经典的笔试题,自己写一个函数实现求字符串的长度。原创 2020-02-06 12:49:15 · 464 阅读 · 0 评论 -
C语言实现将字符串转化为int类型的整数,函数atoi的实现演示
在C语言中的字符串都是以ASCII码的形式存放的。比如字符‘0’的ASCII码就是48。所以我们将字符转化为数字可以通过减字符‘0’实现,那么将字符串转化为数字呢,比如将字符串“123”转化为数字123,我们该如何实现呢?一般我们可以调用函数atoi()将字符串转化成int类型的整数,那么我们在笔试中是不允许这样做的,所以我们可以自己写一个my_atoi()函数。#include<std...原创 2020-02-06 12:30:30 · 3446 阅读 · 0 评论