ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

面试题总结

2020-02-05 16:01:13  阅读:185  来源: 互联网

标签:总结 面试题 E8% E5% E4% E6% Output Input


 Links:
        https://github.com/CyC2018/CS-Notes/blob/master/notes/Leetcode%20%E9%A2%98%E8%A7%A3%20-%20%E9%93%BE%E8%A1%A8.md#3-%E5%BD%92%E5%B9%B6%E4%B8%A4%E4%B8%AA%E6%9C%89%E5%BA%8F%E7%9A%84%E9%93%BE%E8%A1%A8
 题目1:
        实现一个简单的程序:合并两个有序的链表为一个新的有序链表。

 说明:
        链表可能为空。

 例子:
        Input: 1->2->4, 1->3->4
        Output: 1->1->2->3->4->4

class S1:
    def mergerTwoLists(self,curl1,curl2):
        // h=ListsNode(-1)

        if  curl1!=None and curl2!=None:
                return None 
      if curl1 is None:
                return curl2
      if curl2 is None:
                return curl1
      if curl1.val<curl2.val:
                curl1.next=self.mergerTwoLists(curl1.next,curl2)
        return curl1
      else:
                curl2.next=self.mergerTwoLists(curl2.next,curl1)
        return curl2



 Links:
        https://github.com/CyC2018/CS-Notes/blob/master/notes/Leetcode%20%E9%A2%98%E8%A7%A3%20-%20%E6%A0%91.md#3-%E4%B8%A4%E8%8A%82%E7%82%B9%E7%9A%84%E6%9C%80%E9%95%BF%E8%B7%AF%E5%BE%84
 题目2:
        实现一个简单的程序,要求对于一个输入的二叉树,求任意两节点之间最长路径。

 说明:
        两节点之间的路径长度为连接两节点之间边数之和。

 例子:
        Input: 
                 1
            / \
          2  3
         / \
        4   5
        Output: 3           (注:可行解为:[4,2,1,3]或[5,2,1,3])

 go 
type Tree struct{
        Val int
    Rm  int
    Lm  int
    Left *Tree
    Right *Tree
}
max:=0
func MaxDist(root Tree) int{

    if root ==nil{
        return
    }
    
    if root.Left!=nil{
        root.Lm=MaxDist(root.Left)+1
    }
    if root.Right!=nil{
        root.Rm=MaxDist(root.Right)+1
    }
    
    sum:=root.Rm+root.Lm
    if sum>max{
        max=sum
    }
    if root.Rm>root.Lm{
        return root.Rm
    }else{
        return root.Lm
    }
    
}


 Links:
        https://github.com/CyC2018/CS-Notes/blob/master/notes/Leetcode%20%E9%A2%98%E8%A7%A3%20-%20%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92.md#3-%E5%88%86%E5%89%B2%E6%95%B4%E6%95%B0%E6%9E%84%E6%88%90%E5%AD%97%E6%AF%8D%E5%AD%97%E7%AC%A6%E4%B8%B2
 题目3:
        实现一个简单的程序:对于给定的一个正整数m,将m划分为和为m的n个正整数(n>=2),要求使得划分出的这n个数乘积最大。

 说明:
        m的取值范围为[2, 64]。

 例子1:
        Input: 2       
        Output: 1(划分方法:2=1+1)
            
 例子2:
        Input:10
        Output: 36(划分方法:3+3+4)



 Links:
      https://www.nowcoder.com/practice/48b3cb4e3c694d9da5526e6255bb73c3?tpId=37&tqId=21236&tPage=1&rp=&ru=/ta/huawei&qru=/ta/huawei/question-ranking
 题目1:
      实现一个简单的英文句子逆序的功能,要求将一个英文语句以单词为单位逆序输出。

 说明:
      所有单词之间一个空格隔开,语句中只包含英文字母,无其他类型字符。

 例子:
      Input: How are you
      Output: you are how




 Links:
      https:www.nowcoder.com/practice/2c81f88ecd5a4cc395b5308a99afbbec?tpId=37&tqId=21315&tPage=5&rp=&ru=/ta/huawei&qru=/ta/huawei/question-ranking
 题目2:
      实现一个简单的字符串识别程序,要求对于一个输入的字符串找出其中连续最长的数字串并输出其长度。

 说明:
      1.输出的数字串和长度用一个","隔开;
      1.如果连续最长的数字串的长度为0,则返回空串;
      2.如果输入字符串是空,同样返回空串。

 例子:
      Input: 123456a789
      Output: 123456,6




 Links:
      https://github.com/CyC2018/CS-Notes/blob/master/notes/Leetcode%20%E9%A2%98%E8%A7%A3%20-%20%E6%A0%91.md#14-%E6%89%BE%E5%87%BA%E4%BA%8C%E5%8F%89%E6%A0%91%E4%B8%AD%E7%AC%AC%E4%BA%8C%E5%B0%8F%E7%9A%84%E8%8A%82%E7%82%B9
 题目3:
      给定一个二叉树,找出所有节点中的第二小值。

 说明:
      1.二叉树非空且每个节点只有0或2个子节点;
      2.节点值均为正整数;
      3.父节点均不大于子节点值;
      4.如果第二小值不存在,输出-1。

 例子1:
      Input:
         1
        / \
       2   2
          / \
          2  4
      Output: 2
          
 例子2:
      Input:
              1
         / \
        1   1
      Output: -1

标签:总结,面试题,E8%,E5%,E4%,E6%,Output,Input
来源: https://www.cnblogs.com/vinsent/p/12264161.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有