小编Ant*_*ony的帖子

后缀树如何工作?

我正在阅读"算法设计手册"中的数据结构章节,并遇到了后缀树.

该示例说明:

输入:

XYZXYZ$
 YZXYZ$
  ZXYZ$
   XYZ$
    YZ$
     Z$
      $
Run Code Online (Sandbox Code Playgroud)

输出:

在此输入图像描述

我无法理解从给定的输入字符串生成该树的方式.后缀树用于在给定的字符串中查找给定的子字符串,但给定的树如何帮助它呢?我确实理解下面显示的另一个trie示例,但如果下面的trie被压缩到后缀树,那么它会是什么样子?

在此输入图像描述

string algorithm suffix-tree data-structures

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

如何从绝对文件路径制作CommonsMultipartFile?

我正在为我的应用程序创建一个API.在基于GUI浏览器的应用程序中,文件通过表单提交上载.所以我只是这样做CommonsMultipartFile file = request.getFile(myfile).但是,API将以字符串形式提供文件的绝对路径,而不是上载文件.我的应用程序将可以访问此绝对路径.

所以我不必更改我的应用程序的底层方法(它接受公共接口MultiPartFile出于API目的,我想从这个绝对路径读取文件并创建一个CommonsMultipartFile可以传递给我的方法的对象我已经用于基于GUI浏览器的应用程序.

我怎样才能做到这一点?CommonsMultipartFile接受一个的构造函数FileItem

java rest spring multipart apache-commons

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

Groovy Closure说明

我很熟悉像这样的正常groovy闭包

def printSum = {a,b ->
   println a+b
}

printSum(5,7) // 12
Run Code Online (Sandbox Code Playgroud)

但是,我遇到了来自SpringWS插件的代码,我很难理解:

def withEndpointRequest = { url, payload ->
    def writer = new StringWriter()
    def request = new MarkupBuilder(writer)
    payload.delegate = request
    payload.call()
    def webServiceTemplate = new WebServiceTemplate()

    def response = webServiceTemplate.sendToEndpoint(url, writer.toString())
    new XmlSlurper().parseText(response)
}
Run Code Online (Sandbox Code Playgroud)

我知道上面是一个封闭.

它被这样使用:

    def namespace = "http://www.myveryimportantcompany.com/hr/schemas"
    def serviceURL = "http://localhost:8080/myapp/services"
    def response = withEndpointRequest(serviceURL) {
        HolidayRequest(xmlns: namespace) {
            Holiday {
                StartDate("2006-07-03")
                EndDate("2006-07-07")
            }
            Employee {
                Number("42")
                FirstName("Russ")
                LastName("Miles")
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

如果serviceURL …

groovy

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

是否可以在XMP Dublin核心元数据中创建自定义命名空间标记?

我很想知道是否可以为XMP Dublin Core元数据创建自定义命名空间?

例如,如果我想添加像这样的标签 mytest

我可以编写XMP元数据标准标签,description但是我无法编写自己的标签

~/$ exiftool -xmp-dc:description="Foo" demo.png
    1 image files updated
~/$ exiftool -xmp-dc:mytest="Bar" demo.png
Warning: Tag 'mytest' does not exist
Nothing to do.
Run Code Online (Sandbox Code Playgroud)

xmp metadata dublin-core exiftool

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

如何改变g:paginate的外观和感觉

我正在使用g:paginate标签为我的列表页面创建分页链接.我想pagination为标签的UI 使用bootstrap 无序列表.我该如何添加?

bootstrap分页标记的工作方式如下:

<ul class="pagination">
  <li><a href="#">&laquo;</a></li>
  <li><a href="#">1</a></li>
  <li><a href="#">2</a></li>
  <li><a href="#">3</a></li>
  <li><a href="#">4</a></li>
  <li><a href="#">5</a></li>
  <li><a href="#">&raquo;</a></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我正在使用这样的g:paginate标签

<g:paginate controller="mycontroller" action="list" total="${total}" />
Run Code Online (Sandbox Code Playgroud)

html grails pagination

5
推荐指数
3
解决办法
2521
查看次数

如何在data-sly-list中添加条件元素?

我目前有一个填充 JS 数组的数据列表,如下所示:

          var infoWindowContent = [
              <div data-sly-use.ed="Foo"
                   data-sly-list="${ed.allassets}"
                   data-sly-unwrap>
                   ['<div class="info_content">' +
                   '<h3>${item.assettitle @ context='unsafe'}</h3> ' +
                   '<p>${item.assettext @ context='unsafe'} </p>' + '</div>'],
               </div>
               ];
Run Code Online (Sandbox Code Playgroud)

我需要在这个数组中添加一些逻辑。如果assetFormat属性是“text/html”,那么我想打印<p>标签。如果assetFormat属性是image/png那么我想打印img标签。

我的目标是这样的。这有可能实现吗?

          var infoWindowContent = [
              <div data-sly-use.ed="Foo"
                   data-sly-list="${ed.allassets}"
                   data-sly-unwrap>
                   ['<div class="info_content">' +
                   '<h3>${item.assettitle @ context='unsafe'}</h3> ' +
                   if (assetFormat == "image/png")
                       '<img src="${item.assetImgLink}</img>'
                   else if (assetFormat == "text/html")
                       '<p>${item.assettext @ context='unsafe'}</p>'
                   + '</div>'],
               </div>
               ];
Run Code Online (Sandbox Code Playgroud)

aem sightly

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

如何在自定义 django 命令中抽象出命令代码

我正在我的应用程序management/commands目录下编写自定义 django 命令。目前我在该目录中有 6 个不同的文件。每个文件都有一个不同的命令来解决一个独特的需求。但是,有一些实用程序对所有这些实用程序都是通用的。抽象出这个通用代码的最佳方法是什么?

下面是一个例子:

load_colors

class Command(BaseCommand):
   def handle(self, *args, **options)
      ....code unique to colors
   def check_validity(self, color)
      ....#code common to both shades and colors
Run Code Online (Sandbox Code Playgroud)

load_shades

 class Command(BaseCommand):
   def handle(self, *args, **options)
      ....#code unique to shades
   def check_validity(self, color)
      ....#code common to both shades and colors
Run Code Online (Sandbox Code Playgroud)

python django

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

组合图像中的重叠组

我使用opencv_contrib来检测图像中的文本区域.

这是原始图像

这是找到文本区域后的图像:

可以看出,图像中存在重叠的组.例如,似乎是围绕两个组Hello World和两个绕Some more sample text

问题 在这样的场景中,如何通过合并两个框来保持最宽的框.对于这些例子,它将以一个开始H和结束的方式d覆盖Hello World.我这样做的原因是我想裁剪这部分图像并将其发送给tesseract.

这是绘制框的相关代码.

void groups_draw(Mat &src, vector<Rect> &groups)
{
    for (int i=(int)groups.size()-1; i>=0; i--)
    {
        if (src.type() == CV_8UC3)
            rectangle(src,groups.at(i).tl(),groups.at(i).br(),Scalar( 0, 255, 255 ), 2, 8 );
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我尝试过的.我的想法在评论中.

void groups_draw(Mat &src, vector<Rect> &groups)
{
    int previous_tl_x = 0;
    int previous_tl_y = 0;
    int prevoius_br_x = 0;
    int previous_br_y = 0;
    //sort the groups from lowest to largest.
    for …
Run Code Online (Sandbox Code Playgroud)

c++ opencv image-processing computer-vision

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

如何从 S3Object 获取输出流?

我的目标是从 S3 获取一个对象(图像),更改文件的元数据,并将其替换为已更改元数据的新文件。

为了更改元数据,我使用的是commons 图像库。我对下面的示例进行了编码,该示例按预期工作,但不处理 S3。

File newFile = new File("newImage2.jpg");
OutputStream os = new BufferedOutputStream(new FileOutputStream(newFile))
InputStream isNew = new BufferedInputStream(new FileInputStream(newFile))
InputStream is = new BufferedInputStream(new FileInputStream(new File("newImage.jpg")))
try {
            String xmpXml = "<x:xmpmeta>" +
            "\n<Lifeshare>" +
            "\n\t<Date>"+"some date"+"</Date>" +
            "\n\t<Latitude>"+"somelat"+"</Latitude>" +
            "\n\t<Longitude>"+"somelong"+"</Longitude>" +
            "\n\t<Altitude>"+"somealt"+"</Altitude>" +
            "\n\t<Z>"+"someZ"+"</Z>" +
            "\n\t<X>"+"someX"+"</X>" +
            "\n\t<Y>"+"Some y"+"</Y>" +
            "\n</Lifeshare>" +
            "\n</x:xmpmeta>";
            JpegXmpRewriter rewriter = new JpegXmpRewriter();
            rewriter.updateXmpXml(is,os, xmpXml);
            String newXmpXml = Imaging.getXmpXml(isNew, "newImage2.jpg");
            println newXmpXml
        }
finally {
   is.close()
   os.close()
} …
Run Code Online (Sandbox Code Playgroud)

java image-processing amazon-s3 aws-java-sdk apache-commons-imaging

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

有没有办法从boto3获取access_key和secret_key?

当我启动具有IAM角色的EC2实例时,我可以boto3在该EC2实例上使用,而不必指定aws访问和密钥,因为boto3 它们会自动读取它们.

>>> import boto3
>>> s3 = boto3.resource("s3")
>>> list(s3.buckets.all())[0]
s3.Bucket(name='my-bucket-name')
Run Code Online (Sandbox Code Playgroud)

我想知道是否有任何方法可以从boto3获取访问密钥和密钥?例如,如何使用打印到标准控制台print

python amazon-web-services boto3

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