![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔试题
lime1991
这个作者很懒,什么都没留下…
展开
-
常用c/c++常用getline函数
许久不写C,有些常用的输入输出函数容易忘记。//C读入字符串char ori[1000];char after[20];cin.getline(ori, 120);//读入一行cin.getline(after,20);//读入一行scanf("%s", ori);//读入到空格处为止,以空格为切分符scanf("%s", after);原创 2015-09-18 22:14:48 · 449 阅读 · 0 评论 -
形参与实参的纠葛
problem以下代码的输出时什么?#include <stdio.h>#include <stdlib.h>#include<string.h>void getmen(char* p){ p = (char *)malloc(100);}int main(){ char *p = NULL; getmen(p); strcpy_s(p, 10, "hell原创 2015-09-18 17:18:49 · 453 阅读 · 0 评论 -
sizeof()和strlen()不得不说的故事
sizeof()sizeof()是判断一个对象或者一个类型所占内存字节数的操作符。//32bitint a;int b[]={1,2}sizeof(a)//4bytesizeof(b)//数组对象,计算数组元素所占的总长度 4byte*2= 8bytechar *p0;sizeof(p0)//4 bytechar *p1="Tencent";sizeof(p1);//4 byte p1是原创 2015-09-19 22:06:38 · 402 阅读 · 0 评论 -
链表的第一个公共节点
//两个单链表有公共节点,那么公共节点一定出现在两个链表的尾部。//从两个链表的尾部向前比较,最后一个相同的节点就是我们要找的节点。//方法1:用“先进后出”的想法——栈来实现。把两个链表的节点放入两个栈中,依次弹出比较两个栈顶节点是否相同。//方法2:链表的长度不同时,从头开始遍历到尾节点的时间就会不同。//首先遍历两个链表的长度,得到长的链表比短的链表多n个节点。//然后第二次遍历时,在原创 2015-10-10 21:37:32 · 497 阅读 · 0 评论 -
树的最近公共祖先
//如果是二叉搜索树的话,//若当前节点t大于节点u,v,说明u,v的LCA在t的左节点中,故从t的左节点中继续查找//若当前节点t小于节点u,v,说明u,v的LCA在t的右节点中,从t的右节点继续查找//当找到一个节点满足u<t<v时,该节点就是u,v的LCA//当t的一个节点的值等于u或v时,说明其中一个节点是另一个节点的父节点,返回t的父节点struct TreeNode{原创 2015-10-10 22:35:27 · 401 阅读 · 0 评论 -
反转单链表
//保存三个指针,pNode,pPre,PNext;//pNode表示当前要反转的节点//pPre表示当前节点在原链表中的前一节点//pNext表示当前节点在原链表中的后一节点#include<iostream>using namespace std;struct ListNode{ int value; ListNode* next;};ListNode* Rever原创 2015-10-10 23:24:56 · 376 阅读 · 0 评论 -
链表中环的入口
#include<iostream>using namespace std;//1.先判断是否有环,快慢指针,慢指针一次向后前进一格,快指针一次向后前进两格(注意判断是否为NULL)//当快指针为NULL时,两指针仍为相遇则不存在环。//2.判断环中包含元素的个数。//以两指针相遇处为初始点,慢指针依次往后挪,并计数,当再次回到相遇点时,可求得包含元素个数n。//3.找出环的入口。指针p1原创 2015-10-10 16:21:35 · 378 阅读 · 0 评论 -
树的子结构
//两棵二叉树判断B是不是A的子结构//1.在A中遍历,找到节点与B根节点的值相等的节点//2.对该节点和B树遍历,判断结构是否一样//递归#include<iostream>using namespace std;struct Node{ int value; Node* left; Node* right;};bool Traver(Node* pa, N原创 2015-10-11 09:45:12 · 558 阅读 · 0 评论 -
二叉树中和为某一值的路径
//输入二叉树和一个整数,输出二叉树中节点值之和为输入整数的所有路径.路径的定义是从根节点到叶子节点。//路径总是先遍历根节点,所以采用先序遍历的方法//先序遍历某一节点时,将该节点加入路径中,累加是否得到该整数。如果是,输出改路径。//若该节点不是叶子节点,则继续访问他的叶子节点。//若该节点是叶子节点,判断后则需要回退到父节点中。递归函数可以自动实现这一功能,但是需要将路径中的当前节点删原创 2015-10-11 10:17:58 · 505 阅读 · 0 评论