【LeetCode OJ】
Summer_ZJU
如果你不去努力,就没有资格抱怨
展开
-
LeetCode——500. Keyboard Row
LeetCode——500. Keyboard RowLeetCode500 Keyboard Row题目描述分析CPython题目描述Given a List of words, return the words that can be typed using letters of alphabet on only one row’s of American keyboard like原创 2017-03-01 10:43:59 · 1042 阅读 · 0 评论 -
21. Merge Two Sorted Lists
Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists.原题链接:https://leetcode.com/problems/merge-two-sorted-lists/思路原创 2016-09-16 09:20:48 · 318 阅读 · 0 评论 -
19. Remove Nth Node From End of List
Given a linked list, remove the nth node from the end of list and return its head.For example, Given linked list: 1->2->3->4->5, and n = 2. After removing the second node from the end, the linked原创 2016-09-16 09:14:37 · 407 阅读 · 0 评论 -
141、142 Linked List Cycle & II
Given a linked list, determine if it has a cycle in it.Follow up: Can you solve it without using extra space?思路 非常简单的一道题,如果链表有环,则在遍历的时候永远不会结束,一直在环内转圈。 所以,设置快慢指针,如果相遇,则说明有环。代码(C++)/** * Definition f原创 2016-09-11 22:32:38 · 390 阅读 · 0 评论 -
387. First Unique Character in a String
Given a string, find the first non-repeating character in it and return it’s index. If it doesn’t exist, return -1. examples:s = "leetcode"return 0.s = "loveleetcode",return 2.Note: You may assume t原创 2016-09-02 08:31:40 · 443 阅读 · 0 评论 -
389. Find the Difference
Given two strings s and t which consist of only lowercase letters.String t is generated by random shuffling string s and then add one more letter at a random position.Find the letter that was added in原创 2016-09-02 07:37:00 · 702 阅读 · 0 评论 -
206. Reverse Linked List
Reverse a singly linked list.思路 链表反转。有递归和非递归两种方法。在前面一篇文章《链表操作》中已经有介绍,这里就不多说了。代码(C++) * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */原创 2016-09-11 21:40:26 · 385 阅读 · 0 评论 -
374. Guess Number Higher or Lower
题目1We are playing the Guess Game. The game is as follows: I pick a number from 1 to n. You have to guess which number I picked. Every time you guess wrong, I’ll tell you whether the number is higher原创 2016-07-15 07:35:49 · 673 阅读 · 0 评论 -
146. LRU Cache
题目Design and implement a data structure for Least Recently Used (LRU) cache. It should support the following operations: get and set. get(key) - Get the value (will always be positive) of the key if th原创 2016-07-11 08:07:54 · 470 阅读 · 0 评论 -
24. Swap Nodes in Pairs
Given a linked list, swap every two adjacent nodes and return its head.For example,Given 1->2->3->4, you should return the list as 2->1->4->3.Your algorithm should use only constant space. You may not原创 2016-09-16 11:01:48 · 294 阅读 · 0 评论 -
237. Delete Node in a Linked List
Write a function to delete a node (except the tail) in a singly linked list, given only access to that node.Supposed the linked list is 1 -> 2 -> 3 -> 4 and you are given the third node with value 3, t原创 2016-09-16 11:06:54 · 359 阅读 · 0 评论 -
61. Rotate List
Given a list, rotate the list to the right by k places, where k is non-negative.For example:Given 1->2->3->4->5->NULL and k = 2,return 4->5->1->2->3->NULL.思路 两种方法:1、先组成环,再断开;2、先断开,再链接。代码(方法1 C)/** *原创 2016-09-07 08:35:37 · 393 阅读 · 0 评论 -
82. Remove Duplicates from Sorted List II
Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numbers from the original list.For example,Given 1->2->3->3->4->4->5, return 1->2->5.Given 1->1->1->2->3原创 2016-09-05 23:37:30 · 405 阅读 · 0 评论 -
83. Remove Duplicates from Sorted List
Given a sorted linked list, delete all duplicates such that each element appear only once.For example,Given 1->1->2, return 1->2.Given 1->1->2->3->3, return 1->2->3.思路if cur->val == cur->next->valdel原创 2016-09-05 23:30:30 · 355 阅读 · 0 评论 -
344. Reverse String
Write a function that takes a string as input and returns the string reversed.Example:Given s = "hello", return "olleh".思路 太简单了吧,没啥好说的代码(C语言)class Solution {public: string reverseString(string s)原创 2016-09-05 23:21:56 · 335 阅读 · 0 评论 -
367. Valid Perfect Square
Given a positive integer num, write a function which returns True if num is a perfect square else False.Note: Do not use any built-in library function such as sqrt.Example 1:Input: 16Returns: TrueExam原创 2016-09-05 23:09:45 · 444 阅读 · 0 评论 -
382. Linked List Random Node
Given a singly linked list, return a random node’s value from the linked list. Each node must have the same probability of being chosen.Follow up: What if the linked list is extremely large and its le原创 2016-09-16 11:50:56 · 393 阅读 · 0 评论 -
86. Partition List
Given a linked list and a value x, partition it such that all nodes less than x come before nodes greater than or equal to x.You should preserve the original relative order of the nodes in each of the原创 2016-09-16 11:35:35 · 402 阅读 · 0 评论 -
328. Odd Even Linked List
Given a singly linked list, group all odd nodes together followed by the even nodes. Please note here we are talking about the node number and not the value in the nodes.You should try to do it in plac原创 2016-09-16 11:16:55 · 379 阅读 · 0 评论 -
371. Sum of Two Integers
题目1Calculate the sum of two integers a and b, but you are not allowed to use the operator + and -.Example: Given a = 1 and b = 2, return 3. Credits: Special thanks to @fujiaozhu for adding this prob原创 2016-07-11 07:08:27 · 344 阅读 · 0 评论 -
向升序单向链表中插入一个节点
输入一个升序单向链表和一个链表节点,向单向链表中按升序插入这个节点。输入为空指针的情况视为异常,另外不考虑节点值相等的情况。链表结点定义如下:struct ListNode{ int m_nKey; ListNode* m_pNext;};详细描述:接原创 2015-04-16 23:38:50 · 1480 阅读 · 0 评论 -
求二叉树的深度和宽度
题目标题:求二叉树的宽度和深度给定一个二叉树,获取该二叉树的宽度和深度。 例如输入 a / \ b c/ \ / \d e f g 返回3.详细描述:接口说明原型: int GetBi原创 2015-04-09 23:10:07 · 640 阅读 · 0 评论 -
整数排序
输入一串数字,以逗号为分割符,无非法输入输出:将数字按从小到大排序,如果数字是连续的,则只输出头和尾,每个数字之间有空格例:输入:1,4,3,70,90,2,110输出:1 4 70 90 110代码如下:#include #include #include #include #include using namespace std;int main原创 2015-04-12 14:59:49 · 574 阅读 · 0 评论 -
铁路栈问题
题目标题:铁路栈问题 铁路的调度站如下:火车编号为:1~9,且不重复。如:编号分别为“1”、“2”、“3”、“4”、“5”的5个火车顺序进站,那么进站序列为“12345”,全部进站后再顺序出站,则出站序列为“54321”,如果先进1,2,然后2出站,然后1出站,然后再3进站、出站,4进站、出站,5进站、出站,那么出站序列就为21345.详细描述:原创 2015-04-12 22:52:12 · 2169 阅读 · 0 评论 -
链表实现冒泡排序算法
// TEST2.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include#includeint main(int argc, char* argv[]){ int a = 0, i = 0; int *arr = NULL; str原创 2015-04-10 16:36:43 · 1058 阅读 · 0 评论 -
LeetCode OJ : Median of Two Sorted Arrays
Median of Two Sorted Arrays Total Accepted: 14675 Total Submissions: 87067My SubmissionsThere are two sorted arrays A and B of size m and n respectively. Find the median of the two sorte原创 2014-07-13 11:28:17 · 737 阅读 · 0 评论 -
leetcode 刷题指南
这个zhilang原创 2014-05-12 11:01:26 · 6807 阅读 · 1 评论 -
LeetCode OJ : two sum
Two Sum Total Accepted: 18434 Total Submissions: 99493My SubmissionsGiven an array of integers, find two numbers such that they add up to a specific target number.The function twoSum s原创 2014-05-05 11:22:48 · 761 阅读 · 0 评论 -
LeetCode OJ : Reverse Integer
思路:代码如下:原创 2014-05-05 21:11:16 · 650 阅读 · 0 评论 -
删除重复字符
Description 给定一个字符串,将字符串中所有和前面重复多余的字符删除,其余字符保留,输出处理后的字符串。需要保证字符出现的先后顺序。Prototype int GetResult(const char *input, char *output)Input Param input 输入的字符串Output原创 2015-04-07 22:28:12 · 647 阅读 · 0 评论 -
字符串最后一个单词的长度
如题意,代码如下:#include #include #include #include using namespace std;int wordlength(char a[]){ char temp[200]; int count=0; int len=strlen(a); for(int i=0;i<len;i++) temp[i]=a[len-1-i]原创 2015-04-08 20:30:03 · 526 阅读 · 0 评论 -
最大递减数
给出一个正整数,找到这个正整数中包含的最大递减数。一个数字的递减数是指相邻的数位从大到小排列的数字。如: 95345323,递减数有:953,95,53,53,532,32, 那么最大的递减数为953。代码如下:#include #include #include #include #include using namespace std;int getMaxDegre原创 2015-04-09 21:52:35 · 2170 阅读 · 0 评论 -
二叉树遍历
描述: 二叉树的前序、中序、后序遍历的定义:前序遍历:对任一子树,先访问跟,然后遍历其左子树,最后遍历其右子树;中序遍历:对任一子树,先遍历其左子树,然后访问根,最后遍历其右子树;后序遍历:对任一子树,先遍历其左子树,然后遍历其右子树,最后访问根。给定一棵二叉树的前序遍历和中序遍历,求其后序遍历(提示:给定前序遍历与中序遍历能够唯一确定后序遍历)。原创 2015-04-09 20:29:46 · 569 阅读 · 0 评论 -
删除链表中的重复节点、剩余节点逆序输出
题目描述:输入一个不带头节点的单向链表(链表的节点数小于100),删除链表中内容重复的节点(重复的节点全部删除),剩余的节点逆序倒排。要求实现函数: void vChanProcess(strNode * pstrIn,strNode * pstrOut);【输入】 pstrIn:输入一个不带头节点的单向链表【输出】 pstrOut:删除内容重复的节点(重复原创 2015-04-16 22:34:21 · 911 阅读 · 0 评论 -
在字符串中找出连续最长的数字串
题目描述 请一个在字符串中找出连续最长的数字串,并把这个串的长度返回;如果存在长度相同的连续数字串,返回最后一个连续数字串;注意:数字串只需要是数字组成的就可以,并不要求顺序,比如数字串“1234”的长度就小于数字串“1359055”,如果没有数字,则返回空字符串(“”)而不是NULL!样例输入abcd12345ed125ss123058789abc原创 2015-04-14 20:54:09 · 1820 阅读 · 0 评论 -
Arrange an Array to Form a Smallest Digit
Question: Input an array of positive integers, arrange the integers to form new digits, and output the smallest digit among all the new ones. Input Example 1: {2, 1}Output Example 1:原创 2015-04-13 22:00:04 · 718 阅读 · 0 评论 -
大数求和
描述: 给定两个非常大的正整数A和B,位数在50至100之间。求C=A+B; 题目类别: 字符串 难度: 中级 运行时间限制:10Sec内存限制:128MByte阶段: 入职前练习 输入: 因为A和B很大,从高位到低位,以字符串的形原创 2015-04-08 22:56:00 · 1365 阅读 · 1 评论 -
Leetcode OJ : Reverse Words in a String
Given an input string, reverse the string word by word.For example,Given s = "the sky is blue",return "blue is sky the".click to show clarification.Clarification:What constitutes原创 2014-04-18 21:39:35 · 756 阅读 · 0 评论