算法
文章平均质量分 64
大家叫我陈老师
北邮研二在读,研究方向通信算法,关注机器学习
展开
-
链表反转的四种方法分析
关于反转链表的总结:反转链表的方式有很多,现在介绍四种:非递归的:从图中可以看到,对n个节点的反转,方法一指针指向改变了2^(n-1)次,还有一个额外的节点,而方法二用了2^(n-1)次,却没有增加额外节点。方法三既没有增加新节点,指针指向改变了n次,显然方法三好。递归方法很赞,图就不好画了,大家直接看代码。代码:pack原创 2015-06-11 21:59:07 · 1349 阅读 · 0 评论 -
【Leetcode Algorithm】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.自己尝试的代码:1234567原创 2015-07-02 15:07:26 · 270 阅读 · 0 评论 -
【Leetcode Algorithm】Valid Parentheses
Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.The brackets must close in the correct order, "()" and "()[]{}" are all va原创 2015-07-02 15:08:25 · 257 阅读 · 0 评论 -
【Leetcode Algorithm】Implement strStr()
Implement strStr().Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.自己的代码:public class Solution { public int strStr(String hayst原创 2015-07-02 21:23:48 · 239 阅读 · 0 评论 -
【Leetcode Algorithm】Count and Say
The count-and-say sequence is the sequence of integers beginning as follows:1, 11, 21, 1211, 111221, ...1 is read off as "one 1" or 11.11 is read off as "two 1s" or 21.21 is read off as原创 2015-07-03 11:14:02 · 308 阅读 · 0 评论 -
【Leetcode Algorithm】Min Stack
Design a stack that supports push, pop, top, and retrieving the minimum element in constant time.push(x) -- Push element x onto stack.pop() -- Removes the element on top of the stack.top() -- Get原创 2015-07-03 21:24:16 · 210 阅读 · 0 评论 -
【Leetcode Algorithm】Power of Two
Given an integer, write a function to determine if it is a power of two.第一次尝试代码:public class Solution { public boolean isPowerOfTwo(int n) { //如果为0,则false if(n==0){原创 2015-07-06 21:45:38 · 275 阅读 · 0 评论 -
【Leetcode Algorithm】Summary Ranges
Given a sorted integer array without duplicates, return the summary of its ranges.For example, given [0,1,2,4,5,7], return ["0->2","4->5","7"].public class Solution { public List summaryRa原创 2015-07-29 21:12:12 · 330 阅读 · 0 评论 -
ACM 2001 计算两点间的距离
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Problem Description输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离。Input输入数据有多组,每组占一行,由4个实数组成,分别表示x1,y1,原创 2015-09-15 18:28:03 · 404 阅读 · 0 评论 -
【hihoCoder】#1086: Browser Caching (微软笔试题)
#1086 : Browser Caching时间限制:10000ms单点时限:1000ms内存限制:256MB描述When you browse the Internet, browser usually caches some documents to reduce the time cost of fetching them from remote s原创 2015-09-16 16:08:53 · 928 阅读 · 0 评论 -
【Leetcode Algorithm】Contains Duplicate II
Given an array of integers and an integer k, find out whether there there are two distinct indices i and j in the array such that nums[i] = nums[j] and the difference between iand j is at most原创 2015-07-02 15:17:55 · 310 阅读 · 0 评论 -
【Leetcode Algorithm】Add Binary
Given two binary strings, return their sum (also a binary string).For example,a = "11"b = "1"Return "100".自己的代码123456789101112原创 2015-07-02 15:12:50 · 228 阅读 · 0 评论 -
【Leetcode Algorithm】String to Integer (atoi)
Implement atoi to convert a string to an integer.Hint: Carefully consider all possible input cases. If you want a challenge, please do not see below and ask yourself what are the possible input ca原创 2015-07-02 15:10:09 · 280 阅读 · 0 评论 -
【Leetcode Algorithm】Palindrome Number
Determine whether an integer is a palindrome. Do this without extra space.代码:1234567891011121314151617181920原创 2015-07-02 15:17:14 · 601 阅读 · 0 评论 -
【Leetcode Algorithm】Rectangle Area
Find the total area covered by two rectilinear rectangles in a 2D plane.Each rectangle is defined by its bottom left corner and top right corner as shown in the figure.Assume that the tota原创 2015-07-02 15:19:43 · 203 阅读 · 0 评论 -
【Leetcode Algorithm】Invert Binary Tree
Invert a binary tree. 4 / \ 2 7 / \ / \1 3 6 9to 4 / \ 7 2 / \ / \9 6 3 1Trivia:This problem was inspired by this original tweet by Max Howe原创 2015-07-02 15:20:53 · 298 阅读 · 0 评论 -
【Leetcode Algorithm】Remove Element
Given an array and a value, remove all instances of that value in place and return the new length.The order of elements can be changed. It doesn't matter what you leave beyond the new length.原创 2015-07-02 21:22:45 · 240 阅读 · 0 评论 -
【Leetcode Algorithm】Happy Number
Write an algorithm to determine if a number is "happy".A happy number is a number defined by the following process: Starting with any positive integer, replace the number by the sum of the squares原创 2015-07-02 15:15:07 · 292 阅读 · 0 评论 -
【Leetcode Algorithm】Longest Common Prefix
Write a function to find the longest common prefix string amongst an array of strings.自己的代码:12345678910111213141516原创 2015-07-02 15:09:19 · 364 阅读 · 0 评论 -
【Leetcode Algorithm】Remove Duplicates from Sorted Array
Given a sorted array, remove the duplicates in place such that each element appear only once and return the new length.Do not allocate extra space for another array, you must do this in place with原创 2015-07-02 17:03:36 · 226 阅读 · 0 评论 -
【Leetcode Algorithm】Valid Sudoku
Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules.The Sudoku board could be partially filled, where empty cells are filled with the character '.'.A partially原创 2015-07-03 10:20:14 · 563 阅读 · 0 评论 -
【2016去哪儿网笔试题】找出输入中有几个死锁
题目大致意思)寻找输入中有几个死锁,首先输入总共有多少条数据。然后一行输入的信息中第一列代表数据id,第二列代表正在占用的资源id(如果有多个,则用逗号分割,没有则为空格),第三列代表申请占用的资源id(如果有多个,则用逗号分割,没有则为空格)。每列之间用制表符分割。判断其中有多少个死锁。输入(为了避免分不清制表符和空格,我在原题的基础上加上了[制表符]和[空格import java.ut原创 2015-09-21 17:36:13 · 675 阅读 · 0 评论