问题列表 - 第1688页

如何检查数字是否是回文?

如何检查数字是否是回文?

任何语言.任何算法.(除了使数字成为字符串然后反转字符串的算法).

language-agnostic algorithm

121
推荐指数
11
解决办法
21万
查看次数

你是否区分了文本编辑器和IDE?

我已经看到几个问题的回答,要求提供文本编辑器的IDE,反之亦然.这让我觉得人们把它们视为同一件事,在那里我画出明显的区别.

  1. 你如何定义"文本编辑器"和"IDE"?
  2. 你看到这两种工具有什么区别吗?

请注意,我接受了一个答案,我认为最好解决"文本编辑器"和"IDE"的概念.然而,这只是我个人对最佳解决问题的看法,我将不时继续检查这个问题,看看是否有更好的答案,我会接受这个问题.

ide text-editor

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

如何找到字符串格式错误的位置XML(在C#中)?

我正在编写一个轻量级的XML编辑器,如果用户的输入格式不正确,我想向用户指出问题出在哪里,或者至少在第一个问题出现的地方.有谁知道现有的算法吗?如果看代码有帮助,如果我可以填写FindIndexOfInvalidXml方法(或类似的东西),这将回答我的问题.

using System;

namespace TempConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            string text = "<?xml version=\"1.0\"?><tag1><tag2>Some text.</taagg2></tag1>";
            int index = FindIndexOfInvalidXml(text);
            Console.WriteLine(index);
        }

        private static int FindIndexOfInvalidXml(string theString)
        {
            int index = -1;

            //Some logic

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

c# xml algorithm

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

java内存中编译

如何在运行时从String生成字节码(Byte []),而不使用"javac"进程或类似的东西?是否有一种简单的方式来调用编译器?

后来补充:

我选择接受最符合情况的解决方案.我的应用程序是一个仍处于设计草图阶段的业余爱好项目,现在是考虑插入新技术的最佳时机.另外,因为那个应该帮助我的人是一个JavaScript开发人员,在这种情况下,使用JavaScript解释器而不是存根编译器+ classLoader的想法似乎更吸引我.这个问题的其他(未被接受的)答案是提供信息的,据我所知,非常好地回答我的问题,所以谢谢,但我要去尝试Rhino :)

java runtime compilation

10
推荐指数
3
解决办法
5898
查看次数

管理Web应用程序权限的最佳方法是什么 - 位掩码或数据库表?

我正在考虑为"管理"Web应用程序设计权限系统的最佳方法.该应用程序可能有许多用户,每个用户都可以被分配一定的角色; 可以允许其中一些用户执行角色之外的特定任务.

我可以想到两种设计方法:一种是"权限"表,每个用户都有一行,布尔列,每个任务一个,为他们分配执行这些任务的权限.像这样:

User ID          Manage Users     Manage Products     Manage Promotions     Manage Orders
1                true             true                true                  true
2                false            true                true                  true
3                false            false               false                 true

我想到的另一种方法是使用位掩码来存储这些用户权限.对于32位有符号整数,这会将可管理的任务数限制为31,但实际上我们不可能有超过31个用户可以执行的特定任务.这样,数据库模式就会更简单,每次添加需要访问控制的新任务时,我们都不必更改表结构.像这样:

User ID          Permissions (8-bit mask), would be ints in table
1                00001111
2                00000111
3                00000001

人们通常使用什么机制,为什么?

谢谢!

permissions database-design web-applications

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

如何反转UTF-8字符串?

最近,有人询问了一种在C中反转字符串算法.在处理非单字节字符串时,大多数提议的解决方案都存在问题.所以,我想知道什么是专门处理utf-8字符串的好算法.

我提出了一些代码,我将其作为答案发布,但我很高兴看到其他人的想法或建议.我更喜欢使用实际代码,因此我选择了C#,因为它似乎是本网站中最流行的语言之一,但我不介意你的代码是否是另一种语言,只要它可以合理任何熟悉命令式语言的人都能理解.而且,由于这是为了看看这样的算法如何在低级别实现(通过低级别我只是意味着处理字节),我们的想法是避免使用库来实现核心代码.

笔记:

我对算法本身,它的性能以及它如何进行优化感兴趣(我的意思是算法级优化,而不是用++ i替换i ++等等;我对实际的基准测试也不感兴趣).

我并不是要在生产代码中实际使用它或"重新发明轮子".这只是出于好奇和锻炼.

我正在使用C#字节数组,所以我假设您可以获得字符串的长度,而不会运行字符串直到找到NUL.也就是说,我没有考虑到找到字符串长度的复杂性.但是,如果你正在使用C语言,你可以在调用核心代码之前使用strlen()来解决这个问题.

编辑:

正如Mike F指出的那样,我的代码(以及此处发布的其他人的代码)并不处理复合字符.那些有些信息在这里.我不熟悉这个概念,但是如果这意味着存在"组合字符",即只与其他"基本"字符/代码点组合有效的字符/代码点,那么这样的查找表当反转时,字符可用于保持"全局"字符("基本"+"组合"字符)的顺序.

string algorithm performance utf-8

13
推荐指数
4
解决办法
9188
查看次数

在函数中使用它们之前,我应该确保参数不为null吗?

标题可能无法解释我真正想要达到的目标,无法真正想出一种描述我的意思的方法.

我想知道在使用它们之前检查函数接受空值或空的参数是否是好的做法.我有这个函数,它只包含一些哈希创建.

Public Shared Function GenerateHash(ByVal FilePath As IO.FileInfo) As String
        If (FilePath Is Nothing) Then
            Throw New ArgumentNullException("FilePath")
        End If

        Dim _sha As New Security.Cryptography.MD5CryptoServiceProvider
        Dim _Hash = Convert.ToBase64String(_sha.ComputeHash(New IO.FileStream(FilePath.FullName, IO.FileMode.Open, IO.FileAccess.Read)))
        Return _Hash
    End Function
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我只是将IO.Fileinfo作为参数,在我检查的函数的开头,以确保它不是什么.

我想知道这是一个好习惯还是我应该让它到达实际的hasher然后抛出异常,因为它是null.

谢谢.

validation arguments exception function

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

使xargs为每行输入执行一次命令

如何为每个给定的输入行使xargs执行一次命令?它的默认行为是将行块化并执行一次命令,将多行传递给每个实例.

来自http://en.wikipedia.org/wiki/Xargs:

find/path -type f -print0 | xargs -0 rm

在此示例中,查找使用长文件名列表输入xargs.然后xargs将此列表拆分为子列表,并为每个子列表调用rm一次.这比这个功能相同的版本更有效:

find/path -type f -exec rm'{}'\;

我知道find有"exec"标志.我只是引用另一个资源的说明性示例.

xargs

318
推荐指数
7
解决办法
16万
查看次数

将工具和脚本部署到生产的最佳实践?

我有一些批处理过程在Linux/PHP网站的幕后运行.它们的数量和复杂性开始增长,因此我想对它们进行少量处理.

我的源代码树有一堆cpp文件和脚本,按开发组织但不考虑部署.编译完所有可执行文件后,我需要在一组机器上放置各种脚本和二进制文件.不同的计算机需要为其批处理过程使用不同的可执行文件,脚本和配置文件.我也有一些我写的属于每台机器的工具.目前,此部署过程是手动且容易出错的.

我猜我最终会得到一个在源代码树根目录下运行的脚本,并构建一个包含任何机器所需的所有内容的小树.然后,我将把它同步到适当的机器上.但我很好奇其他人是如何处理这类问题的.有任何想法吗?

deployment lamp release release-management

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

.NET中的高级控制台IO

将数据写入屏幕上任意位置的文本控制台并使用自定义前/后颜色的最佳方法是什么?

.net console

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