标签: computer-science

我应该学习汇编语言还是C,了解"真正的编程"是如何工作的?

我是一名Web开发人员,主要从事Ruby和C#...

我想学习一门低级语言,所以我看起来不像我(计算机科学专家)老板面前的屁股.

我听过很多纯粹的嗡嗡声,关于汇编语言是如何学习计算机实际工作的唯一方法,但另一方面,C语言可能更有用,而不仅仅是理论.

所以我的问题是......

学习C会教我足够的计算机科学理论/低级编程,看起来不像一个普通的花花公子(完整工具)吗?

谢谢!

丹尼尔


多谢你们!

一些非常好的答案,

我想我会学习C只是为了掌握内存管理,但我认为你的权利,我会更好地学习更多我使用的语言!

c theory assembly computer-science low-level

2
推荐指数
1
解决办法
6386
查看次数

R编程语言有反射吗?

R有反射吗?

http://en.wikipedia.org/wiki/Reflection_(computer_programming)

基本上我想做的是这样的:

currentRun = "run287"
dataFrame$currentRun= someVar; 
Run Code Online (Sandbox Code Playgroud)

dataFrame$currentRun相当于dataFrame$run287.
这并没有阻止我解决任何问题,但从学术角度来看,我想知道R是否支持反思编程.如果是这样,如何在给出的例子中使用反射?谢谢!

reflection computer-science r metaprogramming

2
推荐指数
2
解决办法
1800
查看次数

为什么Dijkstra的算法需要使用deleteMin()和decreaseKey()?

在大多数伪代码中,我通常会发现以下内容:

  • DeleteMin(返回具有最小键的元素并将其从集合中删除.)

  • DecreaseKey(适应特定元素键值的减少)

  • 为什么使用DeleteMin来检索最小元素 - 为什么不是随机元素?
  • DecreaseKey的目的是什么?在伪代码中,它总是在元素的值改变之后调用.它在做什么?

language-agnostic algorithm computer-science dijkstra

2
推荐指数
1
解决办法
778
查看次数

相同的方程但不同的答案

我在计算器上计算某个值X,并且我进行计算的顺序产生不同的答案.有人可以赐教,至于为什么会这样吗?

情况1:X =(730*4800)/ 1024 = 3421

情况2:X = 730*(4800/1024)= 2920

  • CASE 1实际上更接近于期望的结果.
  • 案例2中的准确性似乎有所下降......?

math computer-science calculator

2
推荐指数
1
解决办法
528
查看次数

算法增长的顺序

假设您将程序计时为N的函数并生成下表.

        N   seconds
-------------------
    19683      0.00
    59049      0.00
   177147      0.01
   531441      0.08
  1594323      0.44
  4782969      2.46
 14348907     13.58
 43046721     74.99
129140163    414.20
387420489   2287.85
Run Code Online (Sandbox Code Playgroud)

估计作为N的函数的运行时间的增长顺序.假设运行时间服从幂律T(N)~n N ^ b.要获得答案,请输入常数b.如果答案在目标答案的1%范围内,您的答案将被标记为正确 - 我们建议在小数分隔符后使用两位数,例如2.34.

有人可以解释如何计算吗?

algorithm computer-science

2
推荐指数
1
解决办法
2538
查看次数

查找图的外边缘

找到图形外边缘的最佳方法是什么?

例如,这张图上的红边:

图形

不知道这个算法有没有名字。这个名字足以帮助我在谷歌上找到一些东西。

computer-science graph-theory

2
推荐指数
1
解决办法
1732
查看次数

自动生成文章

这个问题是要学习和了解特定技术是否存在.以下是该方案.

我们将提供200个英文单词.软件可以添加额外的40个字,这是200的20%.现在,使用这些,软件应该编写对话框,有意义的对话框,没有语法错误.

对于这一点,我看着SpintaxArticle Spinning.但你知道他们做了什么,拿走现有的文章并重写它.但这不是最好的方式(是吗?请告诉我,如果它是好的).那么,有没有能够做到这一点的技术?可能是谷歌使用的语义理论吗?任何经证实的AI方法?

请帮忙.

math computer-science nlp artificial-intelligence spintax

2
推荐指数
1
解决办法
261
查看次数

大数字的递归函数背后究竟发生了什么?

我在下面有一个递归函数.

int f(int n){
  if(n<1) return 1;
  else return f(n-1) + f(n-1);
}
Run Code Online (Sandbox Code Playgroud)

当我用f(0),f(1)等小数字调用函数时,它工作正常.

但是当我调用f(50)f(80)f(100)时,它只是等待并且没有显示输出.

我需要知道背后究竟发生了什么?

c recursion computer-science

2
推荐指数
1
解决办法
212
查看次数

什么是比特流中的高水位线和低水位线

我正在学习CS,当我研究缓冲区时,我对高水位线和低水位线感到困惑。有人可以解释他们是什么。

img

computer-science

2
推荐指数
1
解决办法
2793
查看次数

在单链表和双链表中进行删除的时间复杂度是多少?

如果我们不知道节点的位置,那么单链列表和双链列表是否都需要O(n)时间才能删除?

My understanding is that we need to traverse to node to know the previous pointer of the node and next pointer of node in singly linked list. The time complexity for singly linked list to delete is O(n) as a result.

For doubly linked list, since we know the previous and next pointers of the node we want to delete, the time complexity is O(1).

algorithm optimization computer-science time-complexity data-structures

2
推荐指数
1
解决办法
160
查看次数