企业短信风口来了?
我们可以看到C ++的执行时间和内存比Java程序小得多。对于大型程序来说,这是一个很大的问题。 与C ++相比,Java竞争性编程较慢的原因有很多,这使程序员避免使用它。下面列出了一些常见的。 1.为I / O操作选择错误的类或使用错误的语法 与C ++相比,Java语言相对很慢。JAVA中通常有两个用于I / O操作的类:Scanner类和BufferedReader类。大多数程序员,特别是初学者,都使用Scanner类进行I / O操作,并且由于语法长而避免使用Buffered Reader类进行I / O。 扫描器类中的内部解析操作使程序的执行非常缓慢,而Buffered Reader类仅读取输入,并且根据操作的需要进行进一步的解析。在竞争性编程中,使用Scanner类为Java程序创建TLE问题。 2.编译和执行过程 可以根据程序的执行和编译过程来区分编程语言。某些语言是口译语言,意味着解释器逐行检查特定口译语言的语法,例如Python。 编译语言直接将程序转换为机器代码。结果,这些语言比解释器语言快得多。解释器花费很少的时间来分析源代码。但是,执行该过程的总时间要慢得多。与诸如C或C ++的编译语言相比,这使Interpreted编程语言的执行非常慢。这就是为什么Python比C ++和Java慢的原因。 Java既不是编译语言也不是解释语言。它位于中间。Java是与平台无关的语言,因此在所有编程语言中都非常流行。字节码使其成为一种与平台无关的语言。这就是Java的优势。 它使程序的执行比C ++程序慢,因为没有像C ++中的Java那样发生用于执行和编译的中间操作。程序执行缓慢的原因是,如果虚拟机未运行,则启动Java代码的开销很大。· 3.内存消耗 Java程序的内存消耗比C ++程序更多。 我们都知道Java本身管理内存,不需要程序员的明确干预。垃圾收集器本身可确保清理未使用的空间,并在不需要时释放内存。因此,额外的垃圾回收器会占用额外的内存来跟踪java程序的所有内存消耗。 对于Java程序员来说,不注意内存管理是有益的。它由JVM和垃圾收集器自动完成,但C ++中不存在垃圾收集器。可能会发生内存泄漏,但这会使C ++程序非常轻巧。 因此,与Java程序相比,C ++程序的内存消耗非常少。结果,它有助于 快速执行C ++程序。
我们可以选择任何一种语言进行竞争性编程,但是首先,我们必须清楚其所有基本主题以及特定语言的工作方式,这将对初学者非常有益。 神经网络取代了许多静态算法,并引领了当前的机器学习行业。市场需要基于图的具有直接深度学习关联的技术。由于传统引擎出现故障和GPU缺少支持,才引入了图神经网络。 图神经网络是从图数据中学习的深度学习的新兴领域。随着图卷积网络、LSTM网络等的引入,该领域已显示出巨大的潜力。这些网络本身就是图结构,并利用相似的数据进行训练。诸如CORA和SNAP之类的图形数据集用于对其进行基准测试。 如果人工神经网络是计算图,那么为什么我们需要GNN?答案有时可能会令人困惑,但让我们开始了解基础知识。
当今的图神经网络的发展是非常直观的,上述知识我们需要掌握。 (编辑:信阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |