小编Mit*_*rax的帖子

如何逐个数字地执行程序中的除法?

我正在编写类似于mpz(C)或BigInteger(Java)的类.这只是为了好玩,所以请不要继续谈论我不应该如何写自己的.

我有一个类似于的类:

public class HugeInt
{
    public List<Integer> digits;

    public HugeInt(String value)
    {
        // convert string value into its seperate digits. 
        // store them in instance variable above
    }
}
Run Code Online (Sandbox Code Playgroud)

现在,执行此类的add()和subtract()方法非常简单.这是一个例子:

private List<Integer> add(List<Integer> a, List<Integer> b)
    {
        List<Integer> smallerDigits = (compareDigits(a,b) < 0) ? a : b;
        List<Integer> largerDigits = (compareDigits(a,b) >= 0) ? a : b;
        List<Integer> result = new ArrayList<Integer>();

        int carry = 0;

        for(int i = 0; i < largerDigits.size(); i++)
        {
            int num1 = largerDigits.get(i); …
Run Code Online (Sandbox Code Playgroud)

c# java math division integer-division

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

如何使用按位运算设置或清除前3位?

可以说我有一个像0x448.在二进制中这是0100 0100 1000.

如何使用逐位运算将位1,2和3设置为全0或全1?当我说前三个时,我将最右边的位数作为零位.

所以,例如

比特为1:

b12            b0 
  0100 0100 1110
            ^^^
Run Code Online (Sandbox Code Playgroud)

比特为0:

b12            b0
  0100 0100 0000
            ^^^
Run Code Online (Sandbox Code Playgroud)

我猜测将它们设置为1我使用bit-wise使用14(0x000e)的掩码?但如果是这种情况,我该如何做清除比特的类似事情呢?


有关:

language-agnostic bit-manipulation

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

您何时想在C++中使用指针与值?

我来自Java并试图学习C++.

据我所知,使用指针非常类似于引用变量在Java中的工作方式,因为您将内存地址传递给值.所以我觉得我对他们有了很好的理解.我也明白这些变量存储在堆上.

但是,我看到有另一种方法可以在C++中声明变量,而新的操作符/指针只是执行以下操作:

Employee boss("Frank");
Run Code Online (Sandbox Code Playgroud)

这将创建一个以"Frank"作为参数的Employee值.这些变量存储在堆栈中.

那么,你有两种截然不同的创建变量的方式,它们都有自己独特的行为(内存管理也是如此?).

我的问题是,何时使用指针VS值是否合适?什么是最佳做法?我怎么知道我想以什么方式在大多数时候声明我的变量?

c++ pointers

9
推荐指数
3
解决办法
2984
查看次数

如何使用jquery将LI的项转换为json对象?

如果我有如下列表:

<ul class="nameList">
    <li value="1">Bob</li>
    <li value="2">Frank</li>
    <li value="3">Sally</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

如何将其转换为json对象,如下所示:

[{"id":"1","title":"Bob"},{"id":"2","title":"Frank"},{"id":"3","title": "坦率"}]

我需要将该数据转换为该格式,以便我可以通过$ .post()调用将其传递回我的php服务器.

有人能告诉我如何从该列表中获取项目并使用jQuery将它们转换为上面的json吗?

html jquery json

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

如何仅使用逻辑运算符AND来判断数字是否是四的倍数?

我正在搞乱汇编语言编程,我很好奇我如何使用逻辑运算符AND来判断数字是否为4的倍数?

我知道如何使用"div"或"remaining"指令来完成它,但我试图用数字/字的位操作来做到这一点.

谁能指出我正确的方向?我正在使用MIP,但语言无关的答案很好.

assembly bit-manipulation

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

什么是匿名类型如何有用的例子?

我读过一些关于如何在C#中创建匿名类型的文章.

这些东西有哪些用例?对我来说,似乎可能会让事情变得更难以理解声明对象及其成员的内联.

什么时候使用匿名类型是有意义的?

.net c# anonymous-types

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

我的try语句之后的所有内容都必须包含在try语句中以访问其中的变量吗?

我正在学习java和一件我发现我不喜欢的东西,通常是我有这样的代码:

import java.util.*;
import java.io.*;

public class GraphProblem
{
    public static void main(String[] args)
    {
        if (args.length < 2)
        {
            System.out.println("Error: Please specify a graph file!");
            return;
        }


        FileReader in = new FileReader(args[1]);
        Scanner input = new Scanner(in);

        int size = input.nextInt();
        WeightedGraph graph = new WeightedGraph(size);

        for(int i = 0; i < size; i++)
        {
            graph.setLabel(i,Character.toString((char)('A' + i)));
        }

        for(int i = 0; i < size; i++)
        {
            for(int j = 0; j < size; j++)
            {
                graph.addEdge(i, j, …
Run Code Online (Sandbox Code Playgroud)

java exception-handling exception

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

JavaScript中的这种设计模式是什么?

我正在查看Scrabb.ly的js源代码.

我注意到他们会为每个不同的"类"做类似的事情:

var Board = (function() {
  var self = {};

  // settings for board
  self.options = {
    debug: true,
    addedPlayTiles: function() {},
    clearedPlayTiles: function() {}
  };

  // set to true once the board has been setup
  self.isSetup = false;

  // quick access to square elements
  self.squares = {};
  self.squareCount = 0;

  self.setup = function(options) {
    self.log("Setting up board!");

    // set options
    _.each(options, function(val, key) {
      self.options[key] = val;
    });

    return self;
})();
Run Code Online (Sandbox Code Playgroud)

中间的一些代码已被省略,但这应该给你一般的想法.

  1. 以下(function() { // …

javascript

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

DiggBar如何基于不在其域上的内容动态调整其iframe的高度?

有人已经问过,DiggBar是如何工作的?在上一个问题中.

虽然有人提供了一个体面的答案但它并没有解决一件事:

Digg如何基于跨不同域的网站内容动态调整其iframe的高度?

这里有很多关于SO的问题和答案,只要框架网址在你自己的域上,就可以根据内容动态调整iframes高度(使用javascript). 但是,Digg似乎已经解决了任何域名网站的这个问题.

任何SO网络程序员都知道他们是如何完成的吗?

注意:iframe不是简单地设置为100%高度.iframe标签根本不起作用.谷歌"100%高度iframe",你会明白我的意思.

html iframe digg

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

我怎样才能确保当我改变拼图时,我仍然会得到一个均匀的排列?

我有兴趣实现14-15拼图: 替代文字

我正在按递增的顺序创建一个值为0到15的数组:

S = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}

现在,我想要做的就是改变它们以创建一个新的拼图实例.但是,我知道如果我创建一个具有"奇数排列"而不是无法解决的板.

维基百科说我需要创建一个具有均匀排列的拼图.我相信这意味着我只需要确保我进行偶数交换?

我将如何修改Fisher-Yates,以确保我最终得到一个均匀的排列?如果我对数组中的每个元素进行交换,这将是16个交换,我相信这将是一个偶数排列.但是,我是否需要关注自己交换?有没有其他方法可以确保我有一个有效的拼图?

puzzle shuffle permutation

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