牛客网
牛客网例题
ZD_012
这个作者很懒,什么都没留下…
展开
-
【牛客网】字符串最后一个单词的长度
题目描述 计算字符串最后一个单词的长度,单词以空格隔开。 输入描述: 一行字符串,非空,长度小于5000。 输出描述: 整数N,最后一个单词的长度。 示例: 输入:hello world 输出:5 解题思路 在写代码之前,首先得认识一下string类的一些接口 函数名称 功能说明 size_t find(char c, size_t pos = 0)const 从字符串...原创 2020-03-03 10:09:41 · 205 阅读 · 0 评论 -
【牛客网】找出字符串中第一个只出现一次的字符
题目描述 找出字符串中第一个只出现一次的字符 输入描述: 输入一个非空字符串 输出描述: 输出第一个只出现一次的字符,如果不存在输出-1 示例: 输入:asdfasdfo 输出:o 完整代码 #include<iostream> #include<string> using namespace std; int main() { string str; /...原创 2020-03-03 09:49:40 · 276 阅读 · 0 评论 -
【牛客网】计算日期到天数转换
题目描述 根据输入的日期,计算是这一年的第几天。 详细描述: 输入某年某月某日,判断这一天是这一年的第几天。 示例: 输入:2012 12 31 输出:366 完整代码 int main() { int year, month, day; while (cin >> year >> month >> day) { int monthDa...原创 2020-03-02 17:30:54 · 189 阅读 · 0 评论 -
【牛客网】把字符串转化成整数
题目描述 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0 输入描述: 输入一个字符串,包括数字字母符号,可以为空 输出描述: 如果是合法的数值表达则返回该数字,否则返回0 示例1: 输入:+2147483647 输出:2147483647 示例2: 输入:1a33 输出:0 解题思路 首先判断str[0] 是否为数字字...原创 2020-03-02 17:15:31 · 230 阅读 · 0 评论 -
【牛客网】链表的回文结构
题目描述 对于一个链表,请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法,判断其是否为回文结构。 给定一个链表的头指针A,请返回一个bool值,代表其是否为回文结构。保证链表长度小于等于900。 测试样例: 解题思路 先使用快慢指针法,设置两个指针fast和slow,遍历链表,fast指针速度是slow指针的两倍,从而找到链表的中间结点。之后将后半截链表逆置。最后从头尾向中间扫描,...原创 2020-02-07 15:43:51 · 145 阅读 · 0 评论 -
【牛客网】链表分割
题目描述 编写代码,以给定值x为基准将链表分割成两部分,所有小于x的结点排在大于或等于x的结点之前。 给定一个链表的头指针 ListNode* pHead,请返回重新排列后的链表的头指针。注意:分割以后保持原来的数据顺序不变。 解题思路 设置两个链表,将小于x的结点放在一个链表中,大于等于x的结点放在另一个链表中,然后合并两个链表。 完整代码 /* struct ListNode { in...原创 2020-02-07 12:02:51 · 142 阅读 · 0 评论 -
【牛客网】删除链表中重复的结点
题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 解题思路 1、首先添加一个头节点,以方便碰到第一个,第二个节点就相同的情况。 2、设置 pre ,cur 指针, pre指针指向当前确定不重复的那个节点,而cur指针相...原创 2020-02-06 16:28:37 · 100 阅读 · 0 评论