好未来笔试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; }#软件开发薪资爆料#
秋招笔面记录 文章被收录于专栏
秋招中的笔试以及面记录