📜  TCS Codevita 面试体验2021批次(1)

📅  最后修改于: 2023-12-03 15:05:30.793000             🧑  作者: Mango

TCS Codevita 面试体验2021批次

1. 简介

TCS Codevita 是印度塔塔集团举办的全球性编程竞赛,旨在寻找和培养全球范围内的顶尖程序员。它是世界上最大的基于编程的比赛之一,每年都吸引了来自世界各地的数千名参赛者。

Codevita 的比赛形式为团队赛,采用线上选拔+线下决赛的方式进行。参赛学生需要在规定的时间内完成一系列编程挑战,通过选拔赛进入历时两天的决赛,最后产生冠亚季军以及其他奖项。

2. 面试体验

在 TCS Codevita 面试中,我体验到了严格的筛选和深入的技术交流。

首先,面试官会对我的简历和项目经验进行深入的提问,期望了解我的技术栈、项目经历、团队协作和决策能力等方面。接着,他们会针对我的应聘岗位进行技术测试,测试内容涵盖了数据结构、算法、软件设计等多个方面,需要完美运用不同的编程语言进行实现。

在各个环节中,面试官们会给予充分的时间,教会我如何思考和解决问题,引导我更好地理解如何运用编程技术解决实际问题,同时更深入了解我所掌握的编程知识,并让我发现自己仍需提升和学习的地方。

总的来说,这次 TCS Codevita 面试是一次难忘的经历。在其中,我感受到了成功的喜悦和不断提升自己的必要性,学到了不少的技术知识和经验,相信它会对我未来的职业发展产生积极影响。

3. 代码片段

以下是一个基于 Python 的最短路径算法的代码片段:

# 最短路径算法
def dijkstra(graph, start, end):
    shortest_distance = {}
    predecessor = {}
    unseen_nodes = graph
    infinite = float('inf')
    path = []
    for node in unseen_nodes:
        shortest_distance[node] = infinite
    shortest_distance[start] = 0
    
    while unseen_nodes:
        min_distance_node = None
        for node in unseen_nodes:
            if min_distance_node is None:
                min_distance_node = node
            elif shortest_distance[node] < shortest_distance[min_distance_node]:
                min_distance_node = node
                
        for child_node, weight in graph[min_distance_node].items():
            if weight + shortest_distance[min_distance_node] < shortest_distance[child_node]:
                shortest_distance[child_node] = weight + shortest_distance[min_distance_node]
                predecessor[child_node] = min_distance_node
        unseen_nodes.pop(min_distance_node)
    
    current_node = end
    while current_node != start:
        try:
            path.insert(0, current_node)
            current_node = predecessor[current_node]
        except KeyError:
            print("Path not reachable")
            break
    path.insert(0, start)
    if shortest_distance[end] != infinite:
        print("Shortest distance is: " + str(shortest_distance[end]))
        print("Path is: " + str(path))

以上代码实现了 Dijkstra 最短路径算法,可以用于计算两个节点之间的最短路径。