• 请不要在回答技术问题时复制粘贴 AI 生成的内容
everydiao
V2EX  ›  程序员

前辈们我碰到两个问题毫无头绪话说明天就要交了我慌啊!

  •  1
     
  •   everydiao · Dec 26, 2019 · 5407 views
    This topic created in 2510 days ago, the information mentioned may be changed or developed.

    第一道题 用 springboot 调用 elasticsearch 的原生 api 实现索引文档的增删改查 第二道题 实现 map 的扁平化

    今天的复试题,面试官出了这两道题要求我明天下午四点之前实现出来,可是我对这两道题毫无头绪,里面涉及的技术点我大多都只是听过并没有怎么使用过[捂脸]所以我想求助各位前辈😭

    Supplement 1  ·  Dec 26, 2019
    感谢大家!尽人事知天命,通过这次面试我懂了很多,认识到了自己的很多的不足,虽然我很想去这家公司,但是我也不会明知不可为而为那也是给我找罪受,我会仔细审题琢磨到底要考的知识点,尽可能的把我会的都写上去,无愧于心,说实话今天一整天都像热锅上的蚂蚁一样,总是害怕自己做不出来怎么怎么办,很少认真的去想到底应该怎样,我的出发点错了,现在想起来很惭愧,放平心态把这次当场一次学习的机会就可以了,最后再次感谢各位前辈!
    25 replies  •  2019-12-27 15:31:01 +08:00
    kop1989
    kop1989
    Dec 26, 2019 via iPhone
    1
    map 的扁平化是不是就是遍历 map 的所有 value...
    feigle
    feigle
    Dec 26, 2019
    2
    不好意思,我就是那个面试官,你看着办吧
    floraX
    floraX
    Dec 26, 2019
    3
    不好意思,我就是那个面试官,你看着办吧
    binnerchen
    binnerchen
    Dec 26, 2019
    4
    google
    JohnDoeChou
    JohnDoeChou
    Dec 26, 2019
    5
    不好意思,我就是那个面试官,你看着办吧
    luckyrayyy
    luckyrayyy
    Dec 26, 2019
    6
    springboot 和 elk 都一点没用过吗?没有的话换下一家吧。
    hebin
    hebin
    Dec 26, 2019
    7
    第一道题就是说你要提供几个接口能够对于 es 进行增删该查,所以你首先应该去看文档 了解如何使用 Java 操作 es,然后了解 Spring mvc 怎么提供 API。

    什么是 map 的扁平化?
    feigle
    feigle
    Dec 26, 2019
    8
    @hebin 扁平化,就是压扁,压平;所以力气要大,速度要均匀。
    everydiao
    everydiao
    OP
    Dec 26, 2019 via Android
    9
    @luckyrayyy 之前用的 springmvc
    akmissxt
    akmissxt
    Dec 26, 2019 via Android
    10
    做题前要了解出题者的意图。面试官要的不是答案啊。
    Allianzcortex
    Allianzcortex
    Dec 26, 2019 via iPhone
    11
    map 的扁平化就是 flatten map
    everydiao
    everydiao
    OP
    Dec 26, 2019 via Android
    12
    @hebin 谢谢前辈!第二题给了我一个具体要求

    ### 算法题:
    要求:Map 扁平化

    #### 示例
    ```json
    {
    "portInfo":{
    "protocol":"http",
    "port":80,
    "deviceInfo":{
    "deviceLocation":{
    "zhCountry":"中国",
    "zhCity":"北京"
    },
    "deviceCategory":"RSS",
    "deviceType":"Router"
    }
    }
    }
    ```
    最终要求实现 3 个函数
    1.flat
    >> 返回:
    ```json
    {
    "portInfo.protocol":"http",
    "portInfo.port":80,
    "portInfo.deviceInfo.deviceLocation.zhCountry":"中国",
    "portInfo.deviceInfo.deviceLocation.zhCity":"北京",
    "portInfo.deviceInfo.deviceCategory":"RSS",
    "portInfo.deviceInfo.deviceType":"Router"
    }
    ```
    2.flatPut
    3.flatGet
    everydiao
    everydiao
    OP
    Dec 26, 2019 via Android
    13
    @akmissxt 我没有接触过这些,所以没有什么太好的思路,看不懂他在考察什么,今天查了一天的资料勉强用 springboot 实现了第一题的功能,但是面试官说要调用 es 的原生 api 而不是 springboot 封装的 api
    Allianzcortex
    Allianzcortex
    Dec 26, 2019❤️1
    14
    第二道题的 flatten *** 是一类题目(e.g. https://leetcode.com/problems/flatten-nested-list-iterator/),迭代递归判定每一个 key 对应的 value instanceof 是 string 还是 map。
    tonytonychopper
    tonytonychopper
    Dec 26, 2019
    15
    我知道的「扁平化」是「降维」操作,跑一下递归就行了,不知道跟你这个是不是一样的。
    f1ren2es
    f1ren2es
    Dec 26, 2019
    16
    flatten map 随便 google 一下不就有了,慌啥,遇到笔试做 OJ 才是真绝望
    everydiao
    everydiao
    OP
    Dec 26, 2019
    17
    @Allianzcortex 谢谢您有点思路了
    yincrow
    yincrow
    Dec 26, 2019
    18
    elk 可以直接 http 请求 RESTFUL 接口,简单啊
    werty
    werty
    Dec 26, 2019
    19
    第一题我理解面试官是想给做成一个动态代理模式的玩意, 而不是一个接口一个接口的去写, 毕竟 ES 的接口还是挺多的
    everydiao
    everydiao
    OP
    Dec 26, 2019
    20
    @werty 我也不太清楚,面试官说实现索引文档的增删改查就行
    Justin13
    Justin13
    Dec 26, 2019 via Android
    21
    扁平化还不简单,递归遍历撸一遍就出来了。
    nxtxiaolong
    nxtxiaolong
    Dec 26, 2019
    22
    这行不适合你,找找其他出路吧
    cccy0
    cccy0
    Dec 27, 2019
    24
    调用 es 接口直接发 http 请求就可以了啊, 可以看下 es 官方的 rest low level client 源码, 里面没多少东西
    everydiao
    everydiao
    OP
    Dec 27, 2019 via Android
    25
    @rizon 感谢前辈😂
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1404 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 53ms · UTC 16:53 · PVG 00:53 · LAX 08:53 · JFK 11:53
    ♥ Do have faith in what you're doing.