好未来笔试0903
第一题
请编写一个函数,实现在二叉搜索树(BST)找到指定节点的操作,如果找到就输出该节点的值,否则返回-1;
/*
* type TreeNode struct {
* Val int
* Left *TreeNode
* Right *TreeNode
* }
*/
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param root TreeNode类
* @param target int整型
* @return int整型
*/
func searchBST( root *TreeNode , target int ) int {
// write code here
if root==nil{
return -1;
}
if(root.val==target){
return root.val;
}
if(root.val>target){
return searchBST(root.Left,target);
}else{
return searchBST(root.Right,target);
}
}
第二题
给你一个正整数组成的数组 nums,返回 nums 中一个 降序子数组的最大可能元素和,子数组是数组中的一个连续数字序列,连续为1的数组也为降序子数组
package main
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param nums int整型一维数组
* @return int整型
*/
func maxAscendingSum( nums []int ) int {
// write code here
if(len(nums)==0){
return 0;
}
maxSum:=0;
currentSum:=0;
for i:=1;i<len(nums);i++{
if(i==0||nums[i]<nums[i-1]){
currentSum+=nums[i];
}else {
if currentSum>maxSum {
maxSum = currentSum;
}
currentSum=nums[i];
}
}
if currentSum>maxSum {
maxSum = currentSum;
}
return maxSum;
}
#软件开发薪资爆料#秋招笔面记录 文章被收录于专栏
秋招中的笔试以及面记录
拼多多集团-PDD公司福利 817人发布