小编Thi*_*hib的帖子

你没有从老师那里学到什么C的重要概念?

9月份,我将向工程学院的学生们提供C语言的第一次讲座(通常我会教数学和信号处理,但我也做过很多C语言的实际工作,没有给他们讲课).计算机科学不是他们的主题(他们更多地研究电子和信号处理),但他们需要有良好的编程背景(其中一些可能会成为软件开发人员)

今年将是他们学习C的第二年(他们应该知道指针是什么以及如何使用它,但当然,这个概念尚未被同化)

除了经典的东西(数据结构,经典算法......),我可能会把我的一些讲座集中在:

  • 在用C编码之前设计算法(并用伪代码编写)(在编码之前考虑)
  • 使您的代码可读(注释,变量名称,...)和
  • 指针,指针,指针!(它是什么,如何以及何时使用它,内存分配等......)

根据您的经验,您的老师从未教过您的C中最重要的概念是什么?我应该关注哪个特定点?

例如,我应该将它们介绍给某些工具(lint,......)吗?

c

25
推荐指数
21
解决办法
3440
查看次数

如何在Google地图上叠加SVG图表?

我想在Google地图上添加叠加图片.该图像是我生成的SVG文件(带有SVGFig的Python).

我使用以下代码:

if (GBrowserIsCompatible()) {
    var map = new GMap2(document.getElementById("map_canvas"));
    map.setCenter(new GLatLng(48.8, 2.4), 12);

    // ground overlay
    var boundaries = new GLatLngBounds(new GLatLng(48.283188032632829, 1.9675270369830129), new GLatLng(49.187215000000002, 2.7771877478303999));
    var oldmap = new GGroundOverlay("test.svg", boundaries);
    map.addControl(new GSmallMapControl());
    map.addControl(new GMapTypeControl());
    map.addOverlay(oldmap);
}
Run Code Online (Sandbox Code Playgroud)

令人惊讶的是,它适用于Safari 4,但它不适用于Firefox(使用Safari 3,背景不透明).

有没有人知道如何覆盖SVG?

PS1:我喜欢读一些作品或swa.ethz.ch/googlemaps的源代码,但似乎他们必须使用JavaScript代码来分析SVG并添加一个所有元素一个(但我没有理解所有来源...).

PS2:SVG由不同的填充路径和圆圈组成,具有透明度.如果没有解决方案覆盖我的SVG,我可以使用2种替代解决方案:

  • 光栅化SVG
  • 转换GPolygons中的路径和圆圈

但我真的不喜欢第一种解决方案,因为位图的质量很差,而且生成抗锯齿的时间也是如此.

对于第二种解决方案,弧,椭圆和圆必须分解成小的折线.为了取得好成绩,很多都是必要的.但是我有大约3000个圆弧和圆圈来绘制,所以......

javascript svg google-maps

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

在HTML代码中嵌入SVG文件时,如何在不同的浏览器上生成相同的结果?

我开始在谷歌地图上为我之前的问题覆盖SVG图解决方案.

但我有另一个(较小的)问题.我正在使用Firefox 3.5和Safari 4(在Mac上),当我在XHTML中嵌入SVG时,我根本没有相同的结果.

我可以使用<object><embedded>元素(但我认为最后一个被弃用).我这样使用它们:

<div id="map_canvas" style="width: 900px; height: 900px">
  <object data="test.svg" width="100%" height="100%" type="image/svg+xml"/>
</div>
Run Code Online (Sandbox Code Playgroud)

并且SVG的大小和规模与Firefox和Safari不同.在我的SVG中width,height和,viewBox都被定义了.

有没有办法在所有浏览器中获得相同的结果(我不关心不支持SVG的IE ...所以"所有浏览器"至少意味着最新版本的Firefox,Opera和Safari) ?? 也许我忘了定义的东西?

编辑:我也注意到,使用<object>,SVG是透明的FF,但不透明的Safari ... :(是否有"标准"的方式来包含SVG?

谢谢您的帮助

html safari firefox opera svg

10
推荐指数
1
解决办法
6864
查看次数

Python中的列表理解:列表中的有效选择

假设我有一个元素列表,我想根据某个函数(例如到另一个元素的距离)只选择其中一些元素.

我希望得到一个元组列表,包括距离和元素.所以,我写了下面的代码

result = [ ( myFunction(C), C) for C in originalList if myFunction(C) < limit ]
Run Code Online (Sandbox Code Playgroud)

但这myFunction是一个非常耗时的功能,而且originalList相当大.这样做,myFunction将为每个选定的元素调用两次.

那么,有没有办法避免这种情况?

我还有其他两种可能性,但它们并不是那么好:

  1. 第一个是创建未过滤的列表

    unfiltered = [ (myFunction(C),C) for C in originalList ]
    
    Run Code Online (Sandbox Code Playgroud)

    然后对它进行排序

    result = [ (dist,C) for dist,C in unfiltered if dist < limit ]
    
    Run Code Online (Sandbox Code Playgroud)

    但在那种情况下,我复制了我 originalList并浪费了一些内存(列表可能非常大 - 超过10,000个元素)

  2. 第二个是棘手的,不是非常pythonic,但有效(我们可以做的最好,因为每个元素应该评估一次函数).myFunction将它的最后
    结果存储在全局变量中(lastResult例如),并在List comprehension中重用该值

    result = [ (lastResult,C) for C in originalList if myFunction(C) < limit ]
    
    Run Code Online (Sandbox Code Playgroud)

你是否有更好的想法以高效和pythonic的方式实现这一目标?

谢谢你的回答.

python list-comprehension

9
推荐指数
1
解决办法
6237
查看次数

数字滤波器,Java数学,

我需要你的帮助,谢谢你阅读我的问题!我目前正在编写一个将使用Direket Form 2 Transposed Filter的java Programm.我知道Matlab中的函数过滤器会做得很好,但我必须使用Java.所以有人知道你实现这个Direkt Form 2 Transposed,这个数学函数:

y(n)= b(1)*x(n)+ b(2)*x(n-1)+ ... + b(nb + 1)*x(n-nb) - a(2)*y(n-1) - ... - a(na + 1)*y(n-na)

在任何Programmm语言?所有这一切都有希望成为一个方向,所以我可以弄明白!也许有一个C Lib实现了一些matlab函数,就是任何东西.

谢谢你的时间

你的Elektro

跟进:

我尝试了几天来了解你的功能,但我做不到.

这是Matlab的功能:过滤器

http://www.mathworks.com/access/helpdesk/help/techdoc/index.html?/access/helpdesk/help/techdoc/ref/filter.html&http://www.google.de/search?hl=de&q =过滤器+ MATLAB&btnG =谷歌-Suche&元=&水溶液= F&OQ =

我所知道的是我在matlab中使用这样的函数:

newArray = filter(1,LPC_Faktor,OldArray)

我所要做的就是实现过滤功能.

你能再次帮忙吗?

谢谢

电力币

java math signal-processing

3
推荐指数
1
解决办法
4372
查看次数