小编Dan*_*her的帖子

固定长度的随机数

我想生成一个随机整数,0-9个数字,长度= 5.我试试这个:

function genRand(min,max) {
    for (var i = 1; i <= 5; i++) {
        var range = max - min + 1;
        return Math.floor(Math.random()*range) + min;
    }
}
Run Code Online (Sandbox Code Playgroud)

并致电:

genRand(0,9);
Run Code Online (Sandbox Code Playgroud)

但它总是返回1个数字,而不是5个(

请帮忙!

javascript random

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

将大于long类型最大值的值传递给C中的fseek

我需要将一些值传递给fseek()C中的方法,该值大于signed long类型的最大值(2147483647).但如果我喜欢下面结果的值是-1,这是不成功的.无论如何我能做到这一点吗?

//fp is the pointer to fopen method
unsigned long long index=2147483648;
int status = fseek(fp, index, SEEK_SET);
Run Code Online (Sandbox Code Playgroud)

c c++ objective-c

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

使用as-patterns不绑定到Haskell中的完整List

好吧,也许标题有点令人困惑,但我想要做的是有这样的功能:f (a:b:c:d:is) = ...但能够参考a:b:c:d而不再写它.事实证明,我不能做类似的事情e@(a:b:c:d):is并获得预期的结果.有任何想法吗?

haskell haskell-platform

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

当输入大于缓冲区大小时,attoparsec-iteratee不起作用

我有一个简单的基于attoparsec的pdf解析器.它一直正常工作,直到与iteratee一起使用.当输入的大小超过缓冲区大小时.

import qualified Data.ByteString as BS
import qualified Data.Iteratee as I
import qualified Data.Attoparsec as P
import qualified Data.Attoparsec.Iteratee as P
import System.Environment (getArgs)
import Control.Monad

import Pdf.Parser.Value

main :: IO ()
main = do
  [i] <- getArgs
  liftM (P.parseOnly parseValue) (BS.readFile i) >>= print  -- works
  I.fileDriverRandomVBuf 2048 (P.parserToIteratee parseValue) i >>= print  -- works
  I.fileDriverRandomVBuf 1024 (P.parserToIteratee parseValue) i >>= print  -- DOES NOT works!!!
Run Code Online (Sandbox Code Playgroud)

输入:

<< /Annots [ 404 0 R 547 0 R ] …
Run Code Online (Sandbox Code Playgroud)

haskell attoparsec iterate

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

使正常的monadic函数与monad变换器等效

我正试图解决平衡括号问题.我不想做连续的IO,宁愿只调用getLine并解析生成的字符串.因此,解决问题的函数将处理两种不同的状态:输入字符串的未消耗部分和括号堆栈.

我想设置一些操作堆栈的函数:

type Stack = String

pop :: Stack -> (Char,Stack)
pop (x:xs) = (x,xs)

push :: Char -> Stack -> ((),Stack)
push a xs = ((),a:xs)
Run Code Online (Sandbox Code Playgroud)

如果我在州monad运营,那就好了,不过我在StateT monad运营

balanced :: StateT Stack (State String) Bool
Run Code Online (Sandbox Code Playgroud)

我知道我被告知不要在堆栈中有重复的monad.我这样做是因为我喜欢它如何简化推送和流行定义.

两个问题:

  1. 无论我做什么,我都找不到将push和pop应用到StateT中包含的Stack的方法.
  2. 我不知道如何从main函数调用它

这是代码的其余部分

next :: String -> (Maybe Char,String)
next ""     = (Nothing,[])
next (x:xs) = (Just x,xs)

balanced = do
            c <- lift (state next)
            case c of
              Nothing -> return True
              Just c  -> if elem c open 
                         then (push …
Run Code Online (Sandbox Code Playgroud)

monads stack parsing haskell monad-transformers

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

Haskell标准库的可打印版本

是否有任何Haskell标准库的脱机文档版本?换句话说,我正在搜索关于Haskell库的书籍或可下载的教程?

haskell

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

通过用户定义的函数输出进行Nhibernate过滤

我是NHibernate的新手,到目前为止一切都进展顺利,但我遇到了一个问题,我不确定如何解决问题.基本上我需要通过用户定义函数的输出进行过滤.如果我是用SQL编写的,这就是我写的:

declare @Latitude decimal
declare @Longitude decimal
declare @radius int

set @Latitude = -118.4104684 
set @Longitude = 34.1030032

select  * 
from    store
where   dbo.CalculateDistance([Latitude], [Longitude], @Latitude, @Longitude) < @radius
Run Code Online (Sandbox Code Playgroud)

我已经看到了我认为不合适的公式属性,命名查询和创建自己的方言扩展的例子(这看起来有点过分了).我原本以为有更直接的方式去做,但我似乎无法找到一个整洁的例子.

nhibernate sql-server-2005 user-defined-functions

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

将图像动态转换为二进制,反之亦然

如何将图像转换为二进制数据 .. ???

我想将转换后的二进制数据发送到另一台设备或Web服务器.

哪种机制最好这样做.

android image

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

在c中对双向链表进行排序

我想在插入元素时按排序顺序保留链表(列表中大约200000个元素),您可以推荐哪种算法?我使用插入排序做了一个简单的实现,但它的性能非常差(很多CPU使用率).

谢谢你的帮助.

我在合并排序和插入排序之间进行了一些比较,但似乎插入排序具有更好的性能,我对此结果有点困惑.你能告诉我什么是错的,是否有更好的算法?

我的代码(为简单起见,我省略了节点结构中的prev节点):

struct node {
    int number;
    struct node *next;
};
Run Code Online (Sandbox Code Playgroud)

插入排序:

void insert_node(int value) {
    struct node *new_node = NULL;
    struct node *cur_node = NULL;
    struct node *last_node = NULL;
    int found; /* 1 means found a place to insert the new node in, 0 means not*/


    new_node = (struct node *)malloc(sizeof(struct node *));
    if(new_node == NULL) {
        printf("memory problem\n");
    }
    new_node->number = value;
    /* If the first element */
    if (head == NULL) {
        new_node->next = …
Run Code Online (Sandbox Code Playgroud)

c sorting algorithm performance linked-list

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

文字只有GHC,aeson Portable?

文本包被标记为GHC只,而埃宋包被标记为便携式.但是,aeson依赖于text包中的Data.Text.Internal .但如果text只是GHC,那肯定也aeson必须吗?

haskell

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