当前位置: 首页 > news >正文

零基础学pytho 网站开发煤炭网站建设企业

零基础学pytho 网站开发,煤炭网站建设企业,网站被人做跳转改如何举报,培训网站建设报价单955 神仙公司名单#xff08;非外企#xff09; 往常爆料最多的 955 神仙公司名单通常都是集中在一线城市的外企。 例如下面这张最为流行的名单图#xff1a; 最近牛客网上有同学整理出了非外企的版本#xff0c;其中不乏一些耳熟能详的互联网产品。 随手把名单分享给大家。… 955 神仙公司名单非外企 往常爆料最多的 955 神仙公司名单通常都是集中在一线城市的外企。 例如下面这张最为流行的名单图 最近牛客网上有同学整理出了非外企的版本其中不乏一些耳熟能详的互联网产品。 随手把名单分享给大家。 原文地址https://www.nowcoder.com/discuss/560023184054001664 以下为精简过的原文内容 ... 回归主线。 来一道银行岗刚考过的算法题。 题目描述 平台LeetCode 题号636 有一个单线程 CPU 正在运行一个含有 n 道函数的程序。 每道函数都有一个位于  0 和 n-1 之间的唯一标识符。 函数调用存储在一个调用栈上 当一个函数调用开始时它的标识符将会推入栈中。而当一个函数调用结束时它的标识符将会从栈中弹出。标识符位于栈顶的函数是当前正在执行的函数。每当一个函数开始或者结束时将会记录一条日志包括函数标识符、是开始还是结束、以及相应的时间戳。 给你一个由日志组成的列表 logs 其中 logs[i] 表示第 i 条日志消息该消息是一个按 {function_id}:{start | end}:{timestamp} 进行格式化的字符串。 例如0:start:3 意味着标识符为 0 的函数调用在时间戳 3 的 起始开始执行 而 1:end:2 意味着标识符为 1 的函数调用在时间戳 2 的末尾结束执行。 注意函数可以调用多次可能存在递归调用 。 函数的「独占时间」定义是在这个函数在程序所有函数调用中执行时间的总和调用其他函数花费的时间不算该函数的独占时间。 例如如果一个函数被调用两次一次调用执行 2 单位时间另一次调用执行 1 单位时间那么该函数的独占时间为 2 1 3 。 以数组形式返回每个函数的独占时间其中第 i 个下标对应的值表示标识符 i 的函数的独占时间。 示例 1 输入n  2, logs  [0:start:0,1:start:2,1:end:5,0:end:6]输出[3,4]解释函数 0 在时间戳 0 的起始开始执行执行 2 个单位时间于时间戳 1 的末尾结束执行。 函数 1 在时间戳 2 的起始开始执行执行 4 个单位时间于时间戳 5 的末尾结束执行。 函数 0 在时间戳 6 的开始恢复执行执行 1 个单位时间。 所以函数 0 总共执行 2  1  3 个单位时间函数 1 总共执行 4 个单位时间。  示例 2 输入n  1, logs  [0:start:0,0:start:2,0:end:5,0:start:6,0:end:6,0:end:7]输出[8]解释函数 0 在时间戳 0 的起始开始执行执行 2 个单位时间并递归调用它自身。函数 0递归调用在时间戳 2 的起始开始执行执行 4 个单位时间。函数 0初始调用恢复执行并立刻再次调用它自身。函数 0第二次递归调用在时间戳 6 的起始开始执行执行 1 个单位时间。函数 0初始调用在时间戳 7 的起始恢复执行执行 1 个单位时间。所以函数 0 总共执行 2  4  1  1  8 个单位时间。 示例 3 输入n  2, logs  [0:start:0,0:start:2,0:end:5,1:start:6,1:end:6,0:end:7]输出[7,1]解释函数 0 在时间戳 0 的起始开始执行执行 2 个单位时间并递归调用它自身。函数 0递归调用在时间戳 2 的起始开始执行执行 4 个单位时间。函数 0初始调用恢复执行并立刻调用函数 1 。函数 1在时间戳 6 的起始开始执行执行 1 个单位时间于时间戳 6 的末尾结束执行。函数 0初始调用在时间戳 7 的起始恢复执行执行 1 个单位时间于时间戳 7 的末尾结束执行。所以函数 0 总共执行 2  4  1  7 个单位时间函数 1 总共执行 1 个单位时间。  示例 4 输入n  2, logs  [0:start:0,0:start:2,0:end:5,1:start:7,1:end:7,0:end:8]输出[8,1] 示例 5 输入n  1, logs  [0:start:0,0:end:0]输出[1] 提示 两个开始事件不会在同一时间戳发生 两个结束事件不会在同一时间戳发生 每道函数都有一个对应  start 日志的 end 日志 模拟 我们使用「栈」来模拟执行过程当一个函数被调用op start时压入栈内当函数调用完成op end时从栈顶弹出此时栈顶元素必然是该结束函数的入栈记录使用变量 cur 记录当前时间。 从前往后处理所有的 根据 是属于函数调用还是函数结束进行分情况讨论 当 为函数调用此时从该函数的调用发起时间 ts 到上一次记录的当前时间都是前一函数的执行时间因此可以将 ts - cur 累加到栈帧中的前一函数。即若栈不为空则将该时间累加到栈顶对应的函数上然后将 入栈同时更新当前时间 当 为函数结束此时栈顶元素必然是该函数的调用记录此时 的结束时间与上一次记录的当前时间的时长 ts - cur 1必然是该函数的执行时间将其累加到当前函数中并更新当前时间。 Java 代码 class Solution {    public int[] exclusiveTime(int n, ListString logs) {        int[] ans  new int[n];        DequeInteger d  new ArrayDeque();        int cur  -1;        for (String log : logs) {            String[] ss  log.split(:);            int idx  Integer.parseInt(ss[0]), ts  Integer.parseInt(ss[2]);            if (ss[1].equals(start)) {                if (!d.isEmpty()) ans[d.peekLast()]  ts - cur;                d.addLast(idx);                cur  ts;            } else {                int func  d.pollLast();                ans[func]  ts - cur  1;                cur  ts  1;            }        }        return ans;    }} C 代码 class Solution {public:    vectorint exclusiveTime(int n, vectorstring logs) {        vectorint ans(n, 0);        stackint s;        int cur  -1;        for (auto log : logs) {            istringstream ss(log);            string buf;            vectorstring tokens;            while (getline(ss, buf, :)) {                tokens.push_back(buf);            }            int idx  stoi(tokens[0]), ts  stoi(tokens[2]);            if (tokens[1]  start) {                if (!s.empty()) ans[s.top()]  ts - cur;                s.push(idx);                cur  ts;            } else {                ans[s.top()]  ts - cur  1;                s.pop();                cur  ts  1;            }        }        return ans;    }}; Python 代码 class Solution:    def exclusiveTime(self, n: int, logs: List[str]) - List[int]:        ans  [0] * n        s  []        cur  -1        for log in logs:            ss  log.split(:)            idx, ts  int(ss[0]), int(ss[2])            if ss[1]  start:                if s: ans[s[-1]]  ts - cur                s.append(idx)                cur  ts            else:                ans[s.pop()]  ts - cur  1                cur  ts  1        return ans TypeScript 代码 function exclusiveTime(n: number, logs: string[]): number[] {    const ans  new Arraynumber(n).fill(0)    const stk  new Arraynumber()    let he  0, ta  0, cur  -1    for (let log of logs) {        const ss  log.split(:)        const idx  Number(ss[0]), ts  Number(ss[2])        if (ss[1]  start) {            if (he  ta) ans[stk[ta - 1]]  ts - cur            stk[ta]  idx            cur  ts        } else {            const func  stk[--ta]            ans[func]  ts - cur  1            cur  ts  1        }    }    return ans}; 时间复杂度 空间复杂度 最后 给大伙通知一下 全网最低价 LeetCode 会员目前仍可用快来薅羊毛 年度会员有效期加赠两个月; 季度会员有效期加赠两周 年度会员获 66.66 现金红包; 季度会员获 22.22 现金红包 年度会员参与当月丰厚专属实物抽奖中奖率 30%) 专属链接https://leetcode.cn/premium/?promoChannelacoier 更多详情请戳 这里 。 我是宫水三叶每天都会分享算法知识并和大家聊聊近期的所见所闻。 欢迎关注明天见。 更多更全更热门的「笔试/面试」相关资料可访问排版精美的 合集新基地
http://www.hkea.cn/news/14315927/

相关文章:

  • 网站源码修复盘锦做网站公司
  • wordpress全站同一个标题关键信息基础设施安全保护条例
  • 贵阳市住房和城乡建设厅网站做网站网关备案
  • 企业网站收录中国城乡和住房建设部网站
  • c sql网站开发wordpress自定义菜单的输出
  • 摄影师都在哪些网站发布作品做平面免费接单网站
  • 做产地证的网站学校网站如何建设
  • 西安门户网站开发免费企业网站源码下载
  • 哈尔滨网站设计公司电话东平做网站
  • 北京网站关键词优化推荐一个公司可以做几个百度推广
  • 重庆建站公司哪个好一个营销型网站模板
  • 怎么做网站更新和维护微网站的图标怎么做
  • 企业为什么做网站素材wordpress查看未验证邮箱
  • 温州建设局老网站WordPress文章添加iframe
  • 网站怎么做可以再上面输入文字装饰网站建设优惠套餐
  • 难道做网站的工资都不高吗网站建设费属于无形资产吗
  • 网站开发kpi网站开发时间进度
  • 不会编程如何做自己的网站重庆有什么好玩的吗
  • 旅游加盟网站建设招商项目
  • 中山市 做网站个人备案网站可以做商城展示
  • 单页网站模板修改wordpress 修改语言
  • 夏津建设局网站网站建设是永久使用吗
  • 上海网站制作设计公司主播做的头像在哪个网站上做的
  • 网站建设制作解决方案网络营销的概念和特点是什么
  • 河南省教育类网站前置审批关键词优化营销
  • 洛阳市政建设网站找人做app网站吗
  • 贺州住房和城乡建设部网站网站的网页建设知识ppt模板
  • 免费高清素材网站赣州seo唐三
  • 网站建设询价报告互动网络平台
  • 晨雷文化传媒网站建设报价公司