小编Aka*_*uja的帖子

音乐播放器流程

我正在读一本书,上面写着一个单核并且没有超线程的处理器一次只能处理一个进程,所以当我们在PC上执行这么多操作以及一些后台进程总是存在时就会产生疑问为什么音乐播放器不会在两者之间停留.我知道CPU速度非常快但是音乐播放器通常会持续播放音乐而不会有任何小的中断(可观察到).任何人都可以澄清这种行为吗?

operating-system processor

6
推荐指数
1
解决办法
641
查看次数

以最低成本找到建筑物的共同高度

这是一些编程竞赛中的一个问题(我不确切知道它属于哪个编程竞赛,我在一年前看到它).问题如下:

有N栋建筑,每栋都有自己的高度(不一定是唯一的)

{h1,h2,h3,...,hn}
Run Code Online (Sandbox Code Playgroud)

我们必须使所有相同高度的建筑物都说h.

允许的操作是:

  1. 我们可以为建筑增加一些高度.
  2. 我们可以从建筑物中移除一些高度.

每个建筑物都有相关费用来移除/增加单位高度.假设c(i)是移除/增加建筑物单位高度的成本.各自的费用如下:

{c1,c2,c3,...,cn}
Run Code Online (Sandbox Code Playgroud)

假设我们有足够的高度(单位),我们必须找到使所有建筑物具有相同高度所需的最低成本.

输入:第一行将指定N建筑物的数量.(1 <= N <= 100000).第二条输入线将用于建筑物的高度.

{h1,h2,h3,...,hn}
Run Code Online (Sandbox Code Playgroud)

第三行输入将给出成本数组

 {c1,c2,c3.....,cn}
Run Code Online (Sandbox Code Playgroud)

产量

输出将只是所需的最低成本.

样本输入:

3

2 1 3

10 1000 1
Run Code Online (Sandbox Code Playgroud)

样本输出

12
Run Code Online (Sandbox Code Playgroud)

说明:将所有建筑物的高度设为1,因此费用为10*(2-1)+ 1000*(1-1)+ 1*(3-1),即12.

我知道蛮力方法是O(n ^ 2).

我认为的蛮力方法如下:

无论常见的高度是多少,它都必须来自

 {h1,h2,h3,....,hn}
Run Code Online (Sandbox Code Playgroud)

即h必须等于h(i)中的任何一个.现在检查每个h(i)我可以用O(n ^ 2)计算答案.

是否可以更快地完成它?

algorithm

5
推荐指数
1
解决办法
535
查看次数

以最小的移动交换盒子

这是编程竞赛(已结束)的问题.我正在努力解决这个问题,但找不到一个健康的方法来解决这个问题.

问题如下:

IIIT Allahabad将于10月1日至5日庆祝其年度Techno-Cultural Fiesta Effervescence MM12.厨师同意为这个节日提供糖果.厨师准备了N盒糖果,编号为1到N(每个数字恰好出现一次).厨师非常关注盒子的安排.他希望盒子按特定顺序排列,但不幸的是厨师很忙.他已经要求你为他重新安排盒子.根据框的当前顺序,您必须按指定的顺序重新排列框.但是有一个限制.您只能交换两个相邻的盒子以达到所需的顺序.输出,所需的此类相邻交换的最小数量.

输入

第一行输入包含单个整数T,测试用例数.每个测试用例包含3行,第一行包含单个整数N,数量为框.接下来的2行每行包含N个数字,第一行是给定的框顺序,而第二行是所需的顺序.

产量

对于每个测试用例,输出一个整数'K',所需的最小相邻交换数.约束:

1<=T<=10
1<=N<=10^5
Run Code Online (Sandbox Code Playgroud)

输入:

4

3
1 2 3
3 1 2

3
1 2 3
3 2 1

5
3 4 5 2 1  
4 1 5 2 3  

4
1 2 3 4
2 3 4 1
Run Code Online (Sandbox Code Playgroud)

输出:

2
3
6
3
Run Code Online (Sandbox Code Playgroud)

我对这个问题几乎一无所知.有人可以解释问题背后的逻辑!!

c c++ algorithm

5
推荐指数
1
解决办法
2036
查看次数

背包总重量约为10 ^ 9

我在几周前的编程竞赛中遇到了一个问题,问题是可以减少到背包0/1的问题.

但我不能这样做,因为最大重量大约是10 ^ 9,所以在c ++我不能使用数组.虽然物品数量约为10 ^ 5.

解决这个问题的一种方法,我能想到的是使用STL地图,但不知道如何做到这一点.

任何帮助,将不胜感激.谢谢.

c c++ algorithm

5
推荐指数
1
解决办法
299
查看次数

处理图像时删除文本

我正在开发一个应用程序,我需要像Cam Scanner这样的功能,在图像中检测文档.为此,我使用Canny Edge检测,然后使用Hough Transform.

结果看起来很有希望,但文档中的文字正在创建问题,如下图所示:

原始图像 原始图像

经过精确的边缘检测 在Canny Edge之后

霍夫变换后 霍夫变换后

我的问题在于第三张图像,底部附近的原始图像中的文本强制进行hough变换以检测水平线(从底部开始的第二个簇).

我知道我可以采用最大的四边形,并且在大多数情况下都可以正常工作,但我仍然想知道在这个处理过程中我可以忽略文本对边缘的影响的任何其他方式.

任何帮助,将不胜感激.

python opencv image

5
推荐指数
1
解决办法
1700
查看次数

开放系统调用的工作

我正在阅读有关内存映射文件的消息,该消息称,它比传统方法更快地打开文件或读取文件(如开放系统调用和读取系统调用),而不会给出如何打开或读取系统调用的说明.

那么我的问题 是开放系统调用是如何工作的?

据我所知,它会将文件加载到内存中,而通过使用映射文件,只有它们的地址将保存在内存中,并在需要时将所请求的页面带入内存.

我希望澄清我迄今为止的理解.

编辑

我之前的理解几乎是错误的,因为正确的解释是指Pawel接受的答案.

file-io operating-system file memory-mapped-files

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

如何使用自动脚本将输入传递到网页

如何使用自动脚本将输入传递到php网页,即我只想知道如何使用脚本将参数传递给文本字段.比如将输入传递到网页的用户名和密码字段,然后按提交按钮(也用脚本).

有利的语言:JAVA

php java

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

Electron:桌面捕获器未定义

我正在尝试构建一个需要截屏的应用程序。但当我导入时desktopCapturer,它是undefined

这是我导入的方式,

import { desktopCapturer } from 'electron'

javascript electron

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

电子:通知不是构造函数

我正在尝试初始化电子提供的通知对象。但我收到的错误是: Uncaught Exception: TypeError: electron.Notification is not a constructor

我正在这样做Main

代码:

const electron = require('electron');
new electron.Notification({ title: "Cue", body: "Hello" }).show();
Run Code Online (Sandbox Code Playgroud)

电子版: 2.0.2/2.0.3

任何线索或想法?

javascript electron

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

单击GWT即可触发多次单击事件

我有一个FlexTable并且有一个与之关联的点击事件.有时会发生多次事件被触发的事件.有时一次点击最多10次.我检查了多个事件处理程序,但我只有一个.从案例中可以明显看出,它有时每次点击只运行一次.

有没有人知道为什么会发生这种情况.

这是示例代码片段,我尝试调试它,发现点击处理程序多次启动.

        private FlexTable flex = new FlexTable(); //it is a global variable
        function A(){
          flex.clear();
          flex.removeAllRows();
          flex.removeAllRows();
          flex.setBorderWidth(2);
          flex.setCellPadding(2);
          flex.setCellSpacing(2);
          flex.getRowFormatter().addStyleName(0, "historyTableHeader");
          flex.setText(0, 0, "ID");
          flex.setText(0, 1, "TIME);
          flex.addClickHandler(new ClickHandler() {
              public void onClick(ClickEvent event) {
                  //some code which might result into call of function B
              }
       }

      //function A is being called multiple times by say function B
Run Code Online (Sandbox Code Playgroud)

java gwt

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

功能,线程是否安全?

我正在阅读"实践中的Java并发".我们有一个功能如下:

public class LazyInitRace {
   private ExpensiveObject instance = null;
   public ExpensiveObject getInstance() { 
       if (instance == null)
          instance = new ExpensiveObject(); 
       return instance;
   ??} 
 }
Run Code Online (Sandbox Code Playgroud)

作者说,这不是线程安全的.我认为,"实例"变量不是静态变量,因此线程安全.我认为只有当两个线程访问同一个类实例时,它才会变得不安全.我需要知道我在想什么是正确的?

java

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

寻找聚类算法的准确性

如何在给定算法的真实聚类和预测聚类的情况下找到聚类算法的准确性?

我在网上搜索但找不到任何有用的来源.我知道如何计算分类算法的准确性.

cluster-analysis machine-learning data-mining

0
推荐指数
1
解决办法
7201
查看次数

跟踪该点直到代码运行

我需要跟踪这一点,直到代码运行.考虑下面给出的程序:

function f() throws Exception{
    statement 1 //can throw exception
    statement 2 //can throw exception
    statement 3 //can throw exception
}
Run Code Online (Sandbox Code Playgroud)

我需要一种机制来识别异常发生的位置,一种方法是使用异常来做到这一点,即在异常本身中创建一个变量,或者通过引用函数f传递一些东西并使用它来识别函数在什么时候执行跑得很成功.

哪种方式更好,还是有更优雅的方法呢?

java

0
推荐指数
1
解决办法
55
查看次数